have error Uncaught TypeError: Cannot read properties of undefined (reading 'getAttribute')
I have a website that needs to use filters. Sort by price. But displays an error
const big_content = document.querySelector('#big_content');
document.querySelector('#sort_low').onclick = function() {
low__high('data-price')
}
document.querySelector('#sort_high').onclick = function() {
high__low('data-price')
};
function low__high(sortType) {
const big_content = document.querySelector('#big_content');
for (let i = 0; i < big_content.children.length; i++) {
for (let j = i; i < big_content.children.length; j++) {
if (+big_content.children[i].getAttribute(sortType) > +big_content.children.length[j].getAttribute(sortType)) {
replaceNode = big_content.replaceChild(big_content.children[j], big_content.children[i])
insertAfter(replaceNode, big_content.children[i])
}
}
}
console.log('Sort by price: low to high');
}
function high__low(sortType) {
const big_content = document.querySelector('#big_content');
for (let i = 0; i < big_content.children.length; i++) {
for (let j = i; i < big_content.children.length; j++) {
if (+big_content.children[i].getAttribute(sortType) < +big_content.children.length[j].getAttribute(sortType)) {
replaceNode = big_content.replaceChild(big_content.children[j], big_content.children[i])
insertAfter(replaceNode, big_content.children[i])
}
}
}
console.log('Sort by price: high to low');
}
function insertAfter(elem, refElem) {
return refElem.parentNode.insertBefore(elem, refElem.nextSibling)
}