在for
循环中,我使用getElementById()
在javascript中检索多个输入值。
首先,我制作了一堆输入框,并使用id's
循环设置不同的for
。
现在,我使用第二个for
循环来引用这些id's
并检索其输入值。
for (i=0;i<products.length;i++){
var display;
display ="<input type='number' id="+products[i][0]+" onchange=myFunction()>";
document.write(display);
}
document.write("<p id=demo></p>");
function myFunction() {
var totalVeg=0;
for (j=0;j<products.length;j++){
amount = document.getElementById(products[j][0]).value;
totalVeg += amount;
}
document.getElementById("demo").innerHTML = "You selected: " + totalVeg;
}
</script>
具体来说,我遇到了这个部分的问题:
amount = document.getElementById(products[j][0]).value;
如果我引用特定输入,例如products[0][0]
,则会找到该值。只有当我尝试使用id
变量引用"j"
时,代码才会停止工作。
我已经在这里阅读了其他一些问题和答案,但没有一个是我想要的。
谢谢!
答案 0 :(得分:0)
似乎你没有关于id的引用,但是没有正确定义id尝试这种方式
for (i=0;i<products.length;i++){
var display;
display ="<input type='number' id='"+products[i][0]+"' onchange=myFunction()>";
document.write(display);
}
答案 1 :(得分:0)
<input type="button" id="button1" />
<input type="button" id="button2" />
<input type="button" id="button3" />
<input type="button" id="button4" />
<input type="button" id="button5" />
<input type="button" id="button6" />
<input type="button" id="button7" />
<input type="button" id="button8" />
<input type="button" id="button9" />
您可以将其作为参考。希望它有所帮助。