zoukankan      html  css  js  c++  java
  • 简单的jquery全选反选案例

    本demo适合刚学习jQuery的战友学习。

    一个星期平均有4次晚上是吃  某荔村肠粉,所以内容就是我晚上经常点吃的那些。一般我都是吃14块钱。

    效果如图:

    HTML代码:

     1 <ul id='food'>
     2     <li><input type="checkbox" value='8'>8元 红豆沙</li>
     3     <li><input type="checkbox" value='5'>5元 青菜肠</li>
     4     <li><input type="checkbox" value='2'>2元 加底</li>
     5     <li><input type="checkbox" value='7'>7元 鸡蛋青菜粥</li>
     6     <li><input type="checkbox" value='6'>6元 白灼鲜蔬菜</li>
     7     <li><input type="checkbox" value='7'>7元 黄金南瓜粥</li>
     8     <li><input type="checkbox" value='3'>3元 卤蛋</li>
     9 </ul>
    10 <div>
    11     <input type="checkbox" id='all'>
    12     <input type="button" value='全选' id='selectAll'>
    13     <input type="button" value='全不选' id='unselectAll'>
    14     <input type="button" value='反选' id='reverse'>
    15     <input type="button" value='获得选中的值' id='getnum'>
    16 </div>


    JS代码:

     1 <script src='./js/jquery.min.js'></script>
     2 <script>
     3     //计算次数,当 #food 7个都选中时,#all 也选中
     4     var num =0;
     5     //#all 全选框选中时,#food 全部选中
     6     $('#all').click(function(){
     7         if((this.checked)){
     8             $('#food :checkbox').prop('checked',true);
     9         }else{
    10             $('#food :checkbox').prop('checked',false);
    11         }
    12     })
    13     //全选按钮
    14     $('#selectAll').click(function(){
    15         $(':checkbox').prop('checked',true);
    16         num = 7;
    17     })
    18     //全不选按钮
    19     $('#unselectAll').click(function(){
    20         $(':checkbox').prop('checked',false);
    21         num = 0;
    22     })
    23     //反选按钮
    24     $('#reverse').click(function(){
    25         var arr = [];
    26         $('#food :checkbox').each(function(){
    27             $(this).prop('checked',!$(this).prop('checked'));
    28         })
    29         $('#food>li>input').each(function(){
    30             if(this.checked){
    31                 arr.push($(this).val());
    32             }
    33         });
    34         num = arr.length;
    35         if(num == 7){
    36             $('#all').prop('checked',true);
    37         }else{
    38             $('#all').prop('checked',false);
    39         }
    40     })
    41     //获取价钱,显示出来
    42     $('#getnum').click(function(){
    43         getNum();
    44     });
    45     //全部#food框都选中时,#all 也选中
    46     $('#food :checkbox').click(function(){
    47         if(this.checked){
    48             num++;
    49         }else{
    50             num--;
    51         }
    52         if(num == 7){
    53             $('#all').prop('checked',true);
    54         }else{
    55             $('#all').prop('checked',false);
    56         }
    57     })
    58     //计算价钱
    59     function getNum(){
    60         var sum = 0;
    61         var arr = [];
    62         $('#food>li>input').each(function(){
    63             if(this.checked){
    64                 //取value值,为字符串,转为数字
    65                arr.push(Number($(this).val()));
    66             }
    67         });
    68         //遍历数组,取合
    69         arr.forEach(function(i){
    70             sum += i;
    71         })
    72         alert("总共:"+ sum + "元");
    73     }
    74 
    75 </script>
  • 相关阅读:
    djongo 前端页面展示自定义api返回的列表数据,并拼接到table上
    ou are trying to add a non-nullable field 'address' to person without a default; we can't do that (the database needs something to populate existing rows).
    python string 类型的公钥转换类型并解密
    Django 禁止访问403,CSRF验证失败,相应中断
    springboot async
    此博客可能不再更新,往后博文将发布在 GitHub 中
    css 中 transition 需要注意的问题
    学习笔记(九)
    微信小程序 drawImage 问题
    学习笔记(八)
  • 原文地址:https://www.cnblogs.com/xiaoxiaossrs/p/6978179.html
Copyright © 2011-2022 走看看