Ваша корзина пуста.
document.addEventListener('DOMContentLoaded', function () { let cartBlock = document.querySelector('main'); // Создаем наблюдатель const observer = new MutationObserver(function (mutations) { mutations.forEach(function (mutation) { if (mutation.type === 'childList') { updateCart(cartBlock) } }); }); observer.observe(cartBlock, { childList: true // Отслеживать изменения дочерних элементов }); updateCart(cartBlock) }); function updateCart(cartBlock){ const cartProducts = document.querySelectorAll('.number-input-cart'); cartProducts.forEach(product => { let btnMinus = product.querySelector('.minus'); let btnPlus = product.querySelector('.plus'); let inputCartProducts = product.querySelector('input'); btnPlus.addEventListener('click', function () { let value = parseInt(inputCartProducts.value); inputCartProducts.value = value + 1; quantityRefresh(cartBlock); }); btnMinus.addEventListener('click', function () { let value = parseInt(inputCartProducts.value); if (value > 1) { inputCartProducts.value = value - 1; quantityRefresh(cartBlock) } }); }); function quantityRefresh(cartBlock) { let data = new FormData(); let productQuantities = []; cartProducts.forEach(product => { productQuantities.push(product.querySelector('input').value) }) for (let key in productQuantities) { if (!productQuantities.hasOwnProperty(key)) continue; let value = productQuantities[key]; data.append('quantity[' + key + ']', value); } Joomla.request({ url: '/?option=com_jshopping&controller=cart&task=refresh&ajax=1', method: 'POST', data: data, onSuccess: (response, xhr) => { if (response !== '') { updateCartDisplay(cartBlock); // Обновляем отображение корзины } } }); } // Функция для обновления отображения корзины function updateCartDisplay(cartBlock) { fetch('/?option=com_jshopping&controller=cart&task=view&ajax=1') .then(response => response.text()) .then(data => { //let cartBlock = document.querySelector('main'); if (cartBlock) { cartBlock.innerHTML = data; } }) .catch(error => { console.error('Ошибка:', error); }); } }