我需要使用单个功能切换所有按钮。函数需要切换文档中的所有复选框,因为我的复选框是独立的,而不是表单的一部分。
我目前有这个,但它无法正常工作。我在我的firefox控制台中获得了syntax error: syntax error
。
checked=false;
function checkedAll() {
var c = new Array();
c = doc.getElementsByTagName('input');
if (checked == false){
checked = true;
}else{
checked = false;
}
for (var i = 0; i < c.length; i++){
if (c[i].type == 'checkbox'){
c[i].checked = checked;
}
}
}
如何修复我的代码?
由于
答案 0 :(得分:2)
重构的两个主要项目。首先,它必须是doc
,而不是document
。其次,而不是依赖布尔值中的全局只传递来确定是否选中复选框。
function checkedAll(isChecked) {
var c = document.querySelectorAll('input[type="checkbox"]');
for (var i = 0; i < c.length; i++){
c[i].checked = isChecked;
}
}
答案 1 :(得分:1)
您也可以对每个复选框元素执行以下操作:
c[i].click();
此版本将触发与该元素关联的所有关联事件处理程序。