我目前正在為購物車網頁撰寫 javascript 計算。但是我的小計有問題,一切正常,只有付款的所有小計是錯誤的。
這是我的表代碼,我在其中放置了小計函式的所有類:
<tr>
<td>$no</td>
<td>$item[item_name]</td>
<td>$item[item_price]<input type='hidden' id='only-number-input' class='cart_price' value='$item[item_price]'></td>
<td><input type='number' class='text-center cart_qty' onchange='subTotal()' value='$item[qty]' min='1' max='10'></td>
<td class='cart_total'></td>
<td>
<form action ='manage-cart.php' method='post'>
<button class='btn btn-sm btn-outline-danger' name='remove'>REMOVE</button>
<input type='hidden' name='item_name' value='$item[item_name]'>
</form>
</td>
</tr>
這是我放置小計 ID 的地方:
<div class="border-top py-4">
<h4 class="font-baloo font-size-20">Subtotal </h4>
<h5 class="text-danger" id="sub_total"></h5>
<button type="submit" class="btn btn-warning mt-3">Proceed to Buy</button>
</div>
這是我的 JavaScript 代碼:
var cart_price = document.getElementsByClassName('cart_price');
var cart_qty = document.getElementsByClassName('cart_qty');
var cart_total = document.getElementsByClassName('cart_total');
var sub_total = document.getElementById('sub_total');
function subTotal() {
sub_total = 0;
for (i = 0; i < cart_price.length; i )
{
var calculation = (cart_price[i].value) * (cart_qty[i].value);
cart_total[i].innerText = calculation;
sub_total = sub_total calculation;
}
sub_total.innerText = sub_total;
}
subTotal();
非常感謝您在高級。
uj5u.com熱心網友回復:
您正在重置sub_total到0您的函式內部,因此它不再是 DOM 元素參考。
您可以為函式內的值使用不同的名稱。在這個例子中,我使用了sub_total_value:
var cart_price = document.getElementsByClassName('cart_price');
var cart_qty = document.getElementsByClassName('cart_qty');
var cart_total = document.getElementsByClassName('cart_total');
var sub_total = document.getElementById('sub_total');
function subTotal() {
var sub_total_value = 0;
for (i = 0; i < cart_price.length; i )
{
var calculation = (cart_price[i].value) * (cart_qty[i].value);
cart_total[i].innerText = calculation;
sub_total_value = sub_total_value calculation;
}
sub_total.innerText = sub_total_value;
}
subTotal();
uj5u.com熱心網友回復:
您的 javascript 代碼有兩個名為sub_total. 嘗試重命名一個。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/360359.html
標籤:javascript
上一篇:多串列理解vs單for回圈
