全选/全不选/反选
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script type="text/javascript">
$(function (){
//全选
$("#all").click(function (){
$(":checkbox").prop("checked",true);
})
//全不选
$("#none").click(function (){
$(":checkbox").prop("checked",false);
})
//反选
$("#reverse").click(function (){
$(":checkbox[name='checkbox002']").each(function (){//遍历checkbox类型且name属性为checkbox002的选项
//在each函数中有一个this对象是DOM对象
this.checked = !this.checked;
})
})
//全选/全不选
$("#allOrNone").click(function (){
//this对象是当前响应事件的DOM对象
// this.checked就表示全选/全不选的状态
//这个状态要和下面四个的状态相同
$(":checkbox[name='checkbox002']").prop("checked",this.checked);
});
//满选与非满选
$(":checkbox[name='checkbox002']").click(function (){
var allCount =$(":checkbox[name='checkbox002']").length;
var checkCount =$(":checkbox[name='checkbox002']:checked").length;
$("#allOrNone").prop("checked",allCount == checkCount);
});
});
</script>
</head>
<body>
<table>
<tr>
<td>你喜欢的运动是?</td>
<td><input type="checkbox" id="allOrNone"/>全选/全不选</td>
</tr>
<tr>
<td>
<input type="checkbox" name="checkbox002" value="basketball"/>篮球
<input type="checkbox" name="checkbox002" value="football"/>足球
<input type="checkbox" name="checkbox002" value="ping-pongBall"/>乒乓球
<input type="checkbox" name="checkbox002" value="badminton"/>羽毛球
</td>
</tr>
<tr>
<td>
<button type="button" name="button003" id="all" value="checkAll"/>全选
<button type="button" name="button003" id="none" value="checkNone"/>全不选
<button type="button" name="button003" id="reverse" value="checkReverse"/>反选
</td>
</tr>
</table>
</body>
</html>