js实现当勾选全部复选框时,全选框也自动选上,当不勾选一个复选框,全选框也同时不勾选。
时间: 2023-05-22 21:02:42 浏览: 179
可以这样实现:
HTML:
```html
<input type="checkbox" id="selectAll"/>全选
<br/>
<input type="checkbox" class="checkbox"/>选项1
<br/>
<input type="checkbox" class="checkbox"/>选项2
<br/>
<input type="checkbox" class="checkbox"/>选项3
<br/>
<input type="checkbox" class="checkbox"/>选项4
```
JS:
```js
var selectAll = document.getElementById("selectAll");
var checkboxes = document.getElementsByClassName("checkbox");
//全选
selectAll.addEventListener("change", function(){
for (var i = 0; i < checkboxes.length; i++) {
checkboxes[i].checked = selectAll.checked;
}
});
//每个复选框改变
for (var i = 0; i < checkboxes.length; i++) {
checkboxes[i].addEventListener("change", function() {
var selectedCount = 0;
for (var j = 0; j < checkboxes.length; j++) {
if (checkboxes[j].checked) {
selectedCount++;
}
}
selectAll.checked = (selectedCount === checkboxes.length);
});
}
```
这样,当勾选全部复选框时,全选框也会自动选上,当不勾选一个复选框,全选框也同时不勾选。
阅读全文