嗨我在我的页面上选择名称为viewer [].
在javascript中,我希望遍历此数组并获取每个选定的索引.
var welements = document.getElementsByName('viewer[]')[0];
for ( var i in welements )
{
alert(i.selectedIndex);
}
Run Code Online (Sandbox Code Playgroud)
我有上面但显然是错的.我相信第一行是正确的 - document.getElementsByName返回一个数组,所以我只想要第一个(也是唯一的)结果,即viewer [] html数组
建议表示赞赏,谢谢!
getElementsByName需要NodeList,而不是Array.NodeLists与Arrays非常相似,但存在差异.
无论哪种方式,你都不应该使用它来迭代它们for (foo in bar)- 它获取所有属性(包括foo.length),而不仅仅是你关心的值.
使用:
var welements = document.getElementsByName('viewer[]'); // Removed [0], that gets the **1st** node, not the NodeList.
for (var i = 0, j = welements.length; i < j; i++) {
var an_element = welements[i];
alert(an_element.selectedIndex);
}
Run Code Online (Sandbox Code Playgroud)