t01 DOM 小练习 全选练习
结果图
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/0b35b155bfc6dd5fc47d7eb952b80e08.png)
功能介绍
- 点击全选按钮时,足球、篮球、跑步、跳绳四个多选框 和 全选/全不选 会全部勾选上
- 点击全不选按钮时,足球、篮球、跑步、跳绳四个多选框 和 全选/全不选 会全部不被勾选
- 点击反选按钮时,已经勾选了的取消勾选,未勾选的勾选上
- 全选/全不选 勾选状态要和足球、篮球、跑步、跳绳四个多选框的全部勾选状态一致(即全选/全不选 可以控制四个多选框是否全选;反过来,四个多选框是否全选也会控制全选/全不选 的勾选状态)
- 点击提交按钮时,对话框弹出处于勾选状态的运动
代码
- body中的布局
<body>
<form action="" method="post">
你爱好的体育运动是?<input type="checkbox" id="allBox" />全选/全不选
<br />
<input type="checkbox" name="item" value="足球" />足球
<input type="checkbox" name="item" value="篮球" />篮球
<input type="checkbox" name="item" value="跑步" />跑步
<input type="checkbox" name="item" value="跳绳" />跳绳
<br />
<input type="button" id="checkedAllBtn" value="全选" />
<input type="button" id="checkedNotBtn" value="全不选" />
<input type="button" id="checkedRBtn" value="反选" />
<input type="button" id="sendBtn" value="提交" />
</form>
</body>
- javaScript部分
<script type="text/javascript">
window.onload = function(){
var btn01 = document.getElementById("checkedAllBtn");
var items = document.getElementsByName("item");
btn01.onclick = function(){
box.checked = true;
for(var i=0;i<items.length;i++){
items[i].checked = true;
}
}
var btn02 = document.getElementById("checkedNotBtn");
var items = document.getElementsByName("item");
btn02.onclick = function(){
box.checked = false;
for(var i=0;i<items.length;i++){
items[i].checked = false;
}
}
var btn03 = document.getElementById("checkedRBtn");
var items = document.getElementsByName("item");
btn03.onclick = function(){
box.checked = true;
for(var i=0;i<items.length;i++){
items[i].checked = !items[i].checked;
if(!items[i].checked){
box.checked = false;
}
}
}
var btn04 = document.getElementById("sendBtn");
var items = document.getElementsByName("item");
btn04.onclick = function(){
for(var i=0;i<items.length;i++){
if(items[i].checked){
alert(items[i].value);
}
}
}
var box = document.getElementById("allBox");
var items = document.getElementsByName("item");
box.onclick = function(){
for(var i=0;i<items.length;i++){
items[i].checked = box.checked;
}
}
var box = document.getElementById("allBox");
var items = document.getElementsByName("item");
for(var i=0;i<items.length;i++){
items[i].onclick = function(){
box.checked = true;
for(var j=0;j<items.length;j++){
if(!items[j].checked){
box.checked = false;
break;
}
}
}
}
}
</script>