У меня возникли проблемы с реализацией корзины покупок с помощью Thymeleaf. Расчет промежуточного итога обновляется только для первой строки при изменении количества, и я не могу правильно записать идентификаторы товаров.
У меня возникли проблемы с реализацией корзины покупок с помощью Thymeleaf. Расчет промежуточного итога обновляется только для первой строки при изменении количества, и я не могу правильно записать идентификаторы товаров. [code]
function calc(goodsId, quantity) { console.log("Calculating subtotal for goodsId: " + goodsId + " with quantity: " + quantity.value); var priceElement = document.getElementById("price_" + goodsId); if (priceElement) { var price = parseFloat(priceElement.textContent) || 0; var qtyValue = parseInt(quantity.value) || 0; var subtotal = price * qtyValue;
var subtotalElement = document.getElementById("subtotal_" + goodsId); if (subtotalElement) { subtotalElement.textContent = subtotal.toFixed(2); }
// Calculate total var total = 0; var subtotalElements = document.querySelectorAll("[id^='subtotal_']"); subtotalElements.forEach(function(subtotalElement) { total += parseFloat(subtotalElement.textContent) || 0; }); document.getElementById("total").textContent = total.toFixed(2); } }
$ $
Total: $0.00
[/code] Текущее поведение [list] [*]Промежуточный итог обновляется только для первого элемента при изменении количества.
[*]Идентификаторы элементов не могут быть правильно получены с помощью функции JavaScript.
Ожидаемое поведение
[*]Каждая строка должна корректно обновлять свой промежуточный итог в зависимости от входного количества.
[*]Идентификаторы предметов должны правильно фиксироваться для расчетов.