程序要求
通过点击全选/反选按钮实现其他复选框的全选和反选
思路
(1)创建简单的复选按钮框架,进行基础框架建构
(2)通过调用函数实现全选和反选要求
(3)为节点赋予id名,根据id名查找DOM节点
(4)定义函数创建点击事件
(5)当被选中时返回值为true,未被选中时返回值为false;
(6)全选/反选按钮的返回值应该和其他复选框的返回值相同
代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<input type="checkbox" id="cb1"> 全选/反选<br>
<div>
<input type="checkbox" name="cb2">JavaScript
<input type="checkbox" name="cb2">NodeJS
<input type="checkbox" name="cb2">vue
<input type="checkbox" name="cb2">react
<input type="checkbox" name="cb2">angular
</div>
<script>
var check1 = document.getElementById('cb1'),
check2 = document.getElementsByName('cb2');
check1.onclick = function chk() {
if (check1.checked == true) {
for (var i = 0; i < check2.length; i++) {
check2[i].checked = true;
}
} else {
for (var i = 0; i < check2.length; i++) {
check2[i].checked = false;
}
}
}
小结
该程序只实现了简单的全选与反选,并未实现当其他复选框中如果有一个未被选中,全选/反选按钮就会取消选中的状态。