这是我的代码。我无法使警报正常工作。
var chooseObject = document.getElementsByTagName("input");
var objectLength = chooseObject.length;
var hobbyArray = [];
//hobbyArray("aaa");
//hobbyArray("bbb");
//alert(hobbyArray); This one works.
for(var i=0;i<=objectLength;i++){
if((chooseObject[i].type=="checkbox")&&(chooseObject[i].checked==true)){
//alert(chooseObject[i].value); This one works.
hobbyArray.push(chooseObject[i].value); }
}
alert(hobbyArray);
如果我做了最高警报(我已经发表评论),它就可以了。如果我在for循环中提醒chooseObject [i] .value,那很好。但如果我使用数组,那就失败了。有人能帮助我吗?
答案 0 :(得分:2)
您的for
声明中有一个愚蠢的错误。这样:
for(var i=0;i<=objectLength;i++)
应该是:
for(var i=0;i<objectLength;i++)
当你检查元素的属性时,额外的迭代会导致TypeError
chooseObject[objectLength]
给出undefined
,它没有属性。)