PHPのために指定した配列用name属性をjavascriptで扱うには
PHP側で配列として処理するためにname属性を'foo'のように指定した場合、この属性をjavascriptで扱う場合には以下のように、document.form.elements['foo']とする必要がある。
document.form.foo は当然、 undefined であるし、 document.form.foo[] も構文エラーになるため。
<script type="text/javascript"> //<![CDATA[ function my_confirm(df) { if (df.elements['foo[]'].length > 0) { for (var i = 0; i < df.elements['foo[]'].length; i++) { if (fo.elements['foo[]'][i].checked) { alert("checked = " + fo.elements['foo[]'][i].value); } } } return confirm("ok?"); } //]]> </script> .... <form action="bar.php" method="post" name="form" onsubmit="return my_confirm(document.form);"> <input type="checkbox" name="foo[]" value="a" />A <input type="checkbox" name="foo[]" value="b" />B <input type="checkbox" name="foo[]" value="c" />C <input type="submit" value="submit" /> <input type="reset" value="reset" /> </form>