我无法让我的 javascript 计算适用于购物车。
除了带有“price-”和“qty-”id 的那些之外,我的 HTML 部分还有许多其他输入元素。不知何故,我猜另一个输入元素弄乱了数组。样本:
<input type="hidden" id="price-1" value="10.50"/>
<input type="hidden" id="qty-1" value="1"/>
<input type="hidden" id="shipFee-1" value="4.00"/>
<input type="hidden" id="tax-1" value="0.70"/>
<input type="hidden" id="price-2" value="19.20"/>
<input type="hidden" id="qty-2" value="2"/>
<input type="hidden" id="shipFee-2" value="4.00"/>
<input type="hidden" id="tax-2" value="1.30"/>
我希望它提醒(价格*数量)的总数为“48.9”。这是有问题的javascript部分:
var inputs=document.getElementsByTagName('input'),
total = 0,
price = new Array(),
qty = new Array();
for (var i = 0 ; i < inputs.length ; i++) {
if (inputs[i].id.indexOf('price-') == 0) {
price[i] = parseFloat(document.getElementById(inputs[i].id).value);
alert(price[i]); //alert result: 10.5 and 19.2
}
if (inputs[i].id.indexOf('qty-') == 0) {
qty[i] = parseInt(document.getElementById(inputs[i].id).value);
alert(qty[i]); //alert result: 1 and 2
}
}
alert(price.length); //alert result: 5
alert(qty.length); //alert result: 6
for (i = 0 ; i < price.length ; i++) {
total = total + price[i] * qty[i];
}
alert (total); //alert result: NaN