<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>333333</title>
<style>
.first {
}
table {
text-align: center;
width: 180px;
border: 1px solid black;
cellspacing="0";
}
td {
border: 1px solid black;
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<td ><input type="checkbox" id="j_cbAll"></td>
<td >商品</td>
<td>价钱</td>
</tr>
</thead>
<tbody id="j_tb">
<tr>
<td ><input type="checkbox"></td>
<td >商品</td>
<td>价钱</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td >商品</td>
<td>价钱</td>
</tr>
<tr>
<td ><input type="checkbox"></td>
<td >商品</td>
<td>价钱</td>
</tr>
<tr>
<td ><input type="checkbox"></td>
<td >商品</td>
<td>价钱</td>
</tr>
</tbody>
</table>
<script>
var j_cbAll = document.getElementById('j_cbAll');
var j_tbs = document.getElementById('j_tb').getElementsByTagName('input');
j_cbAll.onclick = function() {
// console.log(this.checked);
for(var i=0; i < j_tbs.length; i++) {
j_tbs[i].checked = this.checked;
}
}
for(var i = 0; i < j_tbs.length; i++) {
j_tbs[i].onclick = function() {
var flag = true;
for(var i = 0; i < j_tbs.length; i++) {
// if(j_tbs[i].checked != j_cbAll.checked){
// j_cbAll.checked = '';
// }
// if(j_tbs[i].checked == true){
// j_cbAll.checked = 'checked';
// }
/*尝试↑*/
/*案例教学↓*/
if(!j_tbs[i].checked) {
flag = false;
}
}
j_cbAll.checked = flag;
}
}
</script>
</body>
</html>
设置flag = true,在每次点击复选框时检测是否所有<tbody>中复选框都为checked状态,若不是则将flag变量改为false,并在方法中将flag的值赋值给<j_cbAll>中的复选框