// 1. 全选和取消全选做法: 让下面所有复选框的checked属性(选中状态) 跟随 全选按钮即可
// 获取元素
var j_cbAll = document.getElementById(‘j_cbAll’); // 全选按钮
// var input = document.querySelector(‘tbody’).querySelectorAll(‘input’);
var input = document.getElementById(‘j_tb’).querySelectorAll(‘input’); // 下面所有复选框
// 2.注册点击事件
// 全选按钮和取消全选
j_cbAll.onclick = function(){
// 获取当前元素的 checked 状态
// this.checked 可以得到当前复选框的选中状态 true 选中 false 未选中
for(var i = 0; i < input.length; i++){
input[i].checked = this.checked;
}
}
// 2.下面复选框按钮选中,全选框才能选中:给复选框绑定点击事件,每次点击都要循环
for(var i = 0; i < input.length; i++){
// 给所有的复选框注册点击事件
input[i].onclick = function(){
// 每次点击下面的复选框都要循环检查4个小按钮是否全选被选中
// 两个for循环是不同作用域 所以用 i 没关系
// flag 控制全选按钮是否选中
var flag = true;
for(var i = 0; i < input.length; i++){
// 如果四个按钮都是选中状态就不会执行 if 直接跳转到最后一条
// 某一个按钮没有被选中
if(!input[i].checked){ // 取反 false
flag = false;
break; // 退出循环
}
}
j_cbAll.checked = flag;
}
}