从 for 循环更新数字


var currentmix = document.getElementById('custommix').value.split(",");
var additionalprice = 0;
for (i = 0; i < currentmix.length; i++) {
if (currentmix[i] != "") {
var mixinpriceid = "mixinprice"+currentmix[i];
additionalprice += parseFloat(document.getElementById(mixinpriceid).value));
}
}

此代码不起作用:(

我知道表达parseFloat(document.getElementById(mixinpriceid).value)在循环的每次迭代中给我正确的数字

但它不会影响 for 循环之外的变量"额外价格"。 有什么方法可以做到这一点吗???????

此语句中还有一个额外的括号,请检查

additionalprice += parseFloat(document.getElementById(mixinpriceid).value)); 

Sathish是正确的,你有一个额外的括号。此代码段将显示代码在没有它的情况下可以工作。

var currentmix = "12345";
var additionalprice = 0;
for (i = 0; i < currentmix.length; i++) {
if (currentmix[i] != "") {
var mixinpriceid = "mixinprice" + currentmix[i];
additionalprice += parseFloat(document.getElementById(mixinpriceid).value);
console.log(additionalprice);
}
}
console.log("Final Value: " + additionalprice);
<input id="mixinprice1" value="100">mixinprice1</input>
<input id="mixinprice2" value="200">mixinprice2</input>
<input id="mixinprice3" value="300">mixinprice3</input>
<input id="mixinprice4" value="400">mixinprice4</input>
<input id="mixinprice5" value="500">mixinprice5</input>

最新更新