判断是否全选,用到计数器的方法。
html部分
<input type="checkbox" name="all">全选<br />
<input type="checkbox" name="check"><span>10</span><br />
<input type="checkbox" name="check"><span>20</span><br />
<input type="checkbox" name="check"><span>30</span><br />
<input type="checkbox" name="check"><span>40</span><br />
<input type="checkbox" name="check"><span>50</span><br />
js部分
var all = document.getElementsByName("all")[0];
var checks = document.getElementsByName("check");
//实现全选和全不选
all.onclick = function () {
for(var i = 0;i < checks.length;i++){
checks[i].checked = this.checked;
}
};
//点击单选时,全选是否被选择
for(var j = 0;j < checks.length;j++){
checks[j].onclick = function () {
var count = 0; //定义一个计数器
for(var m = 0;m < checks.length;m++){
//判断是否取消全选
if(!checks[m].checked){
all.checked = false;
}else{ //如果是选中状态,计数器+1
count++;
}
//判断是否都是选中状态/如果是则自动选中全选按钮
if(count == checks.length){
all.checked = true;
}
}
}
}