下面的代码(用于选择多个复选框)工作正常(在每个浏览器中),但今天它会出错(在每个浏览器中),如:
这种情况一直在发生...... 代码:
<html>
<head>
<script language="JavaScript">
function toggle(source) {
checkboxes = document.getElementsByName('foo[]');
for each(var checkbox in checkboxes)
checkbox.checked = source.checked;
}
</script>
</head>
<body>
<input type="checkbox" onClick="toggle(this)" /> Toggle All<br/>
<input type="checkbox" name="foo[]" value="bar1"> Bar 1<br/>
<input type="checkbox" name="foo[]" value="bar2"> Bar 2<br/>
<input type="checkbox" name="foo[]" value="bar3"> Bar 3<br/>
<input type="checkbox" name="foo[]" value="bar4"> Bar 4<br/>
</body>
</html>
答案 0 :(得分:2)
JS 1.6中曾经有for each in,最近有array.foreach
但我建议你使用这样的for循环,因为你有一个集合
function toggle(source) {
var checkboxes = document.getElementsByName('foo[]');
for (var i=0;i<checkboxes.length;i++) {
checkboxes[i].checked = source.checked;
}
}