需求:使用JS完成全选和全不选
判断选中状态使用:document.getElementById("").chekcked
技术分析:
1、确定事件 onclick事件或,编写函数
2、判断编号前面的复选框是否被选中 document.getElementById("").chekcked
3、如果被选中则把下面的行全部置为选中
4、如果未被选中则把下面的行全部置为未选中
步骤分析:
1、编写函数,拿到表头的复选框
2、获取第一行复选框状态,并进行判断
3、获取下面所有的复选框,
4、遍历所有复选框。
5、拿到复选框,对每一个复选框的状态置为选中/不选
代码实现:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>使用JS完成全选和全不选</title>
<!--
作者:offline
时间:2019-05-22
描述:
技术分析:
1、确定事件 onclick事件或,编写函数
2、判断编号前面的复选框是否被选中 document.getElementById("").chekcked
3、如果被选中则把下面的行全部置为选中
4、如果未被选中则把下面的行全部置为未选中
步骤分析:
1、编写函数,拿到表头的复选框
2、获取第一行复选框状态,并进行判断
3、获取下面所有的复选框,
4、遍历所有复选框。
5、拿到复选框,对每一个复选框的状态置为选中/不选
-->
<script>
//1、编写函数,拿到表头的复选框
function CheckAll() {
var CheckAllEle = document.getElementById("CheckAll");
var Flag = CheckAllEle.checked;
// 2、获取第一行复选框状态,并进行判断
if (Flag == true) {
//3拿到下面所有的复选框
var checkOnes = document.getElementsByName("Checkone");
//4、对所有的复选框进行遍历
for (var i = 0; i < checkOnes.length; i++) {
//5、将所有的复选框状态置为true
checkOnes[i].checked = true;
}
} else {
//6拿到下面所有的复选框
var checkOnes = document.getElementsByName("Checkone");
//7、对所有的复选框进行遍历
for (var i = 0; i < checkOnes.length; i++) {
//8、将所有的复选框状态置为true
checkOnes[i].checked = false;
}
}
}
</script>
</head>
<body>
<table border="1" width="500" height="50" align="center">
<thead>
<tr>
<td colspan="4">
<input type="button" value="添加" />
<input type="button" value="删除" />
</td>
</tr>
<tr>
<th><input type="checkbox" onclick="CheckAll()" id="CheckAll" /></th>
<th>编号</th>
<th>姓名</th>
<th>年龄</th>
</tr>
</thead>
<tbody>
<tr>
<td><input type="checkbox" name="Checkone" /></td>
<td>1</td>
<td>张三</td>
<td>22</td>
</tr>
<tr>
<td><input type="checkbox" name="Checkone" /></td>
<td>2</td>
<td>李四</td>
<td>25</td>
</tr>
<tr>
<td><input type="checkbox" name="Checkone" /></td>
<td>3</td>
<td>王五</td>
<td>27</td>
</tr>
<tr>
<td><input type="checkbox" name="Checkone" /></td>
<td>4</td>
<td>赵六</td>
<td>29</td>
</tr>
<tr>
<td><input type="checkbox" name="Checkone" /></td>
<td>5</td>
<td>田七</td>
<td>30</td>
</tr>
<tr>
<td><input type="checkbox" name="Checkone" /></td>
<td>6</td>
<td>汾九</td>
<td>20</td>
</tr>
</tbody>
</table>
</body>
</html>
效果图: