У меня возникла проблема при отладке внешнего интерфейса: внешний интерфейс позволяет пользователям при добавлении выбранных или выбранных для покупки товаров добавляться в корзину. Поэтому, когда позже они смогут просмотреть их, в настоящее время внешний интерфейс не работает. пока делаю, но ниже приведена ошибка, которую я получаю при отладке со стороны клиента, в то время как серверная часть работает нормально.
"Необнаруженная ошибка типа: item.totalPrice имеет значение null updateCartItems https://splashonline.co.za/js/add-to-cart.js:139 updateCartItems https://splashonline.co.za/js/add-to-cart.js:132 https://splashonline.co.za/js/add-to-cart.js:149" // код jquery
$(document).ready(function() { $(".add-to-cart-btn").click(function(e) { е.preventDefault(); вар productId = $(this).data("id"); var ProductName = $(this).data("имя-продукта"); var ProductImage = $(this).data("изображение-продукта"); // Получаем количество из элемента ввода количества var количество = parseInt($("#quantity-input-" + productId).val()); // Убедитесь, что идентификатор правильный // Получаем цену продукта из атрибута данных var ProductPrice = parseFloat($(this).data("цена-продукта")); // Сохраняем информацию о продукте в сеансе var carsItems = JSON.parse(sessionStorage.getItem("cartItems")) || []; carItems.push({ идентификатор продукта: идентификатор продукта, количество: количество, изображение продукта: изображение продукта, Имя продукта: Имя продукта, общая цена :общая цена }); sessionStorage.setItem("cartItems", JSON.stringify(cartItems)); $.ajax({ тип: "ПОСТ", URL: "add-to-cart.php", данные: {productId: ProductId}, успех: функция (ответ) { // Отладка: оповестить ответ, чтобы убедиться, что он успешен предупреждение (ответ); updateCartBadge(); // Обновляем значок корзины, указывая новое количество getCartItem(); // Обновляем товары в корзине после добавления }, ошибка: функция (xhr, статус, ошибка) { alert("Произошла ошибка при добавлении товара в корзину."); console.log(xhr.responseText); } }); }); // Функция для обновления значка корзины. функция updateCartBadge (userId) { $.ajax({ тип: «ПОЛУЧИТЬ», URL: "getCartItemCount.php", данные: {userId: userId}, успех: функция (ответ) { console.log('Количество товаров в корзине:', ответ); $("#cart-badge").text(ответ); // Обновляем количество значков корзины }, ошибка: функция (xhr, статус, ошибка) { alert("Произошла ошибка при получении количества товаров в корзине."); console.log(xhr.responseText); } }); } // функция обновления товаров в корзине. функция updateCartItems (cartData) { console.log("Ответ сервера:", carsData); вар carItems = carsData.cartItems; var carsContainer = document.getElementById("cart-items"); carsContainer.innerHTML = ""; carsItems.forEach(функция (пункт) { // Создаём элементы для отображения товаров корзины var itemContainer = document.createElement("tr"); //столбец для сведений о корзине с названием продукта var itemName = document.createElement("td"); itemName.textContent = item.product_name; itemContainer.appendChild(имя элемента); //столбец для сведений о корзине изображений var itemImage = document.createElement("td"); var image = document.createElement("img"); image.src = item.product_image; image.alt = item.product_name; image.classList.add("img-thumbnail"); itemImage.appendChild(изображение); itemContainer.appendChild(itemImage); //столбец для информации о ценовой корзине var itemPrice = document.createElement("td"); itemPrice.textContent = "$" + item.totalPrice; itemContainer.appendChild(itemPrice); //столбец количества для информации о корзине. var itemQuantity = document.createElement("td"); itemQuantity.textContent = item.product_qty; itemContainer.appendChild(itemQuantity); //столбец для действия по удалению элементов. var itemAction = document.createElement("td"); var RemoveButton = document.createElement("кнопка"); RemoveButton.textContent = "Удалить"; RemoveButton.classList.add("btn", "btn-danger", "btn-sm"); RemoveButton.dataset.productId = item.product_id; RemoveButton.addEventListener("click", function () { вар ProductId = this.dataset.productId; удалитьItemFromCart (идентификатор продукта); }); itemAction.appendChild(removeButton); itemContainer.appendChild(itemAction); carsContainer.appendChild(itemContainer); }); var totalPriceContainer = document.getElementById("общая цена"); totalPriceContainer.textContent = "Общая цена: R" + carsData.totalPrice; } // Вызов бэкэнда для получения данных корзины при открытии модального окна корзины $("#cartModal").on("show.bs.modal", function () { $.ajax({ тип: «ПОЛУЧИТЬ», URL: "getCartData.php", Тип данных: «JSON», успех: функция (cartData) { console.log("Ответ сервера:", carsData); updateCartItems (cartData); updateCartBadge(); }, ошибка: функция (xhr, статус, ошибка) { alert("Произошла ошибка при получении информации о товаре в корзине"); console.log(xhr, responseText); } }); }); // функция для заполнения модального окна корзины товарами. функция getCartItemsForModal() { $.ajax({ тип: «ПОЛУЧИТЬ», URL: "getCartItem.php", Тип данных: «html», успех: функция (ответ) { $("#cart-items").html(ответ); }, ошибка: функция (xhr, статус, ошибка) { console.log("Произошла ошибка при получении товаров из корзины"); console.log(xhr.responseText); }, }); } updateCartItems(); //вызов функции getCartItemsForModal. $("#cart-badge-btn").click(function () { getCartItemsForModal(); }); //функция для удаления товара из корзины. функция RemoveItemFromCart (productId) { $.ajax({ тип: "ПОСТ", URL: "removeCartItem.php", данные: {productId: ProductId}, Тип данных: «JSON», успех: функция (ответ) { если (ответ.успех) { getCartItemsForModal(); updateCartItems(); } еще { alert("Произошла ошибка при удалении товара из корзины"); } }, ошибка: функция (xhr, статус, ошибка) { alert("Произошла ошибка при удалении товара из корзины."); console.log(xhr.responseText); }, }); } функция getCartItem() { $.ajax({ тип: «ПОЛУЧИТЬ», URL: "getCartItem.php", успех: функция (ответ) { $("#cart-items").html(ответ); // Обновляем товары корзины на странице }, ошибка: функция (xhr, статус, ошибка) { alert("Произошла ошибка при получении товаров из корзины."); console.log(xhr.responseText); } }); } // Вызов updateCartBadge и getCartItem при загрузке страницы updateCartBadge(); getCartItem(); }); }); // HTML-код

Красочная стильная рубашка 123,00 ранда123,00 ранда Подробнее ^__i class="fas fa-shopping-cart text-primary mr-1">Добавить в корзину
Мобильная версия