点击全选/取消全选复选框后,我会尝试选中/取消选中所有复选框,如下所示:
onclick="selectAll(document.getElementsByName('myForm:checkboxes'));"
和JS函数:
function selectAll(checkboxes)
{
for(var i in checkboxes)
checkboxes[i].checked = true;
}
function deselectAll(checkboxes)
{
for(var i in checkboxes)
checkboxes[i].checked = false;
}
和HTML:
<input type="checkbox" value="15" name="myForm:checkboxes" id="myForm:checkboxes3:_1">
此代码在firefox中运行良好,但在Internet Explorer 9中它无效。
答案 0 :(得分:3)
发表评论作为回答:
来自Mozilla开发者网络文档的for..in
循环:
for ... in循环以任意顺序迭代对象的属性
由于您的checkboxes
是一个nodeList而不是一个对象,因此应该使用for
循环。
因此,请使用:
,而不是for...in
for (var i=0,len=checkboxes.length;i<len;i++){
// do stuff
}
参考文献: