效果如下:

要求:点击上边的多选按钮,下边的多选按钮和上边的一致,点击下边的多选按钮,判断所有的多选按钮是否全部被选定,只有全部被选定,上边的才选定
代码如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
.wrap{
355px;
border:1px solid pink;
margin: 100px auto;
}
table{
border-collapse: collapse;
border-spacing: 0;
border:1px solid pink;
font-family: "微软雅黑";
text-align: center;
}
th,td{
border:1px solid #fff;
}
th{
background: pink;
color: #fff;
font-size: 16px;
padding: 10px 35px;
}
tbody tr{
background: #E9E7E7;
}
tbody tr:hover{
background: #9ED9F2;
color: #fff;
cursor: pointer;
}
</style>
<script type="text/javascript" src="../scripts/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(function(){
//需求1:点击上面的多选按钮,下面的所有的多选按钮都和上面的一致
//需求2:点击下面的多选按钮,判断下面的所有多选按钮都是否全部被选定,只有全部被选定,上边的才被选定
//需求1:点击上面的多选按钮,下面的所有的多选按钮都和上面的一致
//步骤:绑定事件,直接让下面的所有按钮和上面的按钮属性值一模一样
$("#j_ckAll").click(function(){
//直接让下面的所有按钮和上面的按钮属性值一模一样
$("#j_tb input:checkbox").prop("checked",$(this).prop("checked"));
})
//需求2:点击下面的多选按钮,判断下面的所有多选按钮都是否全部被选定,只有全部被选定,上边的才被选定
$("#j_tb input:checkbox").click(function(){
//判断只有下面的都被选定,上面的才被选定
//技术点:带有checked属性和CheckBox一样多的时候
if ($("#j_tb input:checkbox").length === $("#j_tb input:checked").length) {
//只有所有的checkbox都有checked属性,上面的才被选中
$("#j_ckAll").prop("checked",true);
}else{
$("#j_ckAll").prop("checked",false);
}
})
})
</script>
</head>
<body>
<div class="wrap">
<table>
<thead>
<tr>
<th><input type="checkbox" id="j_ckAll"></th>
<th>课程名称</th>
<th>所属学院</th>
</tr>
</thead>
<tbody id="j_tb">
<tr>
<td><input type="checkbox"/></td>
<td>javascript</td>
<td>传智播客</td>
</tr>
<tr>
<td><input type="checkbox"/></td>
<td>Css</td>
<td>传智播客</td>
</tr>
<tr>
<td><input type="checkbox"/></td>
<td>html</td>
<td>传智播客</td>
</tr>
</tbody>
</table>
</div><!--wrap结束-->
</body>
</html>