1

これが私のコードです。アラートを機能させることができません。

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に警告すると、問題ありません。しかし、配列を使用すると失敗しました。誰かが私を助けてもらえますか?

4

1 に答える 1

2

あなたのfor声明にはばかげた誤りがあります。これ:

for(var i=0;i<=objectLength;i++)

する必要があります:

for(var i=0;i<objectLength;i++)

TypeError要素のプロパティをチェックすると、余分な反復が発生します(プロパティを持たないをchooseObject[objectLength]与える)。undefined

于 2012-11-12T21:34:31.490 に答える