javascript循环getElementById

rom*_*ain 0 javascript loops

我有一个页面,其中包含许多带有增量ID的文本框.我想阅读所有这些ID并使用javascript显示它们.

HTML页面看起来像:

<input type="text" id="item1" value="111" ></input>
<input type="text" id="item2" value="222" ></input>
<input type="text" id="item3" value="333" ></input>
Run Code Online (Sandbox Code Playgroud)

和一个JavaScript部分:

for (var i=1; i<3; i++){
    var values = parseInt(document.getElementById('item' + i).value);
    document.write(values);
}
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么但只显示第一个ID然后firefox返回错误(在调试控制台sysing中:TypeError:document.getElementById(...)为null

谢谢你的帮助 !

罗曼

Mik*_*ckx 5

document.write导致问题,在循环外删除它应该工作.此外,您的for循环定义仅循环2个元素,而不是第3个元素...

var values = [], i = 0;
for (; i < 4; i += 1) {
    values.push(parseInt(document.getElementById('item' + i).value, 10));
}

document.write(values.join(', '));
Run Code Online (Sandbox Code Playgroud)