首页 > 其他 > 详细

案例:表单全选和取消全选

时间:2020-06-01 19:04:37      阅读:46      评论:0      收藏:0      [点我收藏+]

全选和取消全选

全选之后下面的被全部选中

下面的全部选中 上面才被选中

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <meta name="viewport" content="width=device-width, initial-scale=1.0">
 6     <title>Document</title>
 7 </head>
 8 <body>
 9     <div class="wrap"></div>
10     <table>
11         <thead>
12             <tr>
13                 <th>
14                     <input type="checkbox" id = "j_cbAll">
15                 </th>
16                 <th>商品</th>
17                 <th>价钱</th>
18             </tr>
19         </thead>
20         <tbody id = "j_tb">
21             <tr>
22                 <td>
23                     <input type="checkbox">
24                 </td>
25                 <td>iphone8</td>
26                 <td>8000</td>
27             </tr>
28 
29             <tr>
30                 <td>
31                     <input type="checkbox">
32                 </td>
33                 <td>iphone4</td>
34                 <td>8000</td>
35             </tr>
36 
37             <tr>
38                 <td>
39                     <input type="checkbox">
40                 </td>
41                 <td>iphone4</td>
42                 <td>8000</td>
43             </tr>
44 
45         </tbody>
46     </table>
47 </body>
48 <script>
49     //1. 全选和取消全选的作用  让下面所有复选框checked属性 (选中状态) 跟随 全选按钮即可
50     //获取元素
51     var j_cbAll = document.getElementById(‘j_cbAll‘);  //全选按钮
52     var j_tbs = document.getElementById(‘j_tb‘).getElementsByTagName(‘input‘);//下面所有的复选框
53     //注册事件
54     j_cbAll.onclick = function() {
55         //this.checked 它可以得到当前复选框选中状态 如果是true 就是选中 如果是false就是未选中
56         //this.checked = ‘checked‘;
57         console.log(this.checked);
58         for(var i = 0 ;i<j_tbs.length ; i++){
59             j_tbs[i].checked = this.checked;
60         }
61     }
62 
63 
64     // 2.下面复选框全部选中 上面才选中,如果一个没选择中 上面全选就不选中
65     
66     for(var i=0 ; i<j_tbs.length ; i++)
67     {
68         j_tbs[i].onclick = function(){
69             var flag = true;
70             for(var i = 0 ; i < j_tbs.length ; i++)
71             {
72                 if(!j_tbs[i].checked)
73                 {
74                     flag = false;
75                     break;//退出for循环 这样可以提高执行效率 只要有一个没有选中剩下的就无需循环
76                 }
77             }
78             j_cbAll.checked = flag;
79         }
80     }
81 </script>
82 </html>

 

案例:表单全选和取消全选

原文:https://www.cnblogs.com/qiujie-prion/p/13026676.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!