面试问题之电商网站中购物车如何实现一键全选或者一键全不选功能??

本文介绍了在电商网站购物车中实现一键全选或一键全不选功能的方法,主要通过jQuery操作复选框(checkbox)来实现。文章详细列举了12个jQuery操作复选框的小技巧,包括如何获取选中项、设置选中状态、删除特定复选框等,为开发者提供了实用的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

答案是遍历checklist,修改checkbox的状态;那么有哪些方法可以遍历checklist呢??

html代码如下:

  <div>    
                 <input type="checkbox" name="ckb" value="1" />1    
                 <input type="checkbox" name="ckb" value="2" />2    
                 <input type="checkbox" name="ckb" value="3" />3    
                 <input type="checkbox" name="ckb" value="4" />4    
                 <input type="checkbox" name="ckb" value="5" />5    
                 <input type="checkbox" name="ckb" value="6" />6    
                 <input type="checkbox" name="ckb" value="7" />7    
                 <input type="checkbox" name="ckb" value="8" />8    
                <input type="checkbox" name="ckb" value="9" />9    
                <input type="checkbox" name="ckb" value="10" />10<br>    
                <input type="button" id="btn" value="遍历"/>    
                <div id="txt"></div>    
           </div>   

方法一:

      通过type属性遍历

<script>    
                  $(document).ready(function(){    
                      $("#btn").click(function(){    
                          var str = "";    
                          $("input[type='checkbox']").each(function(){    
                              if($(this).is(":checked"))    
                              {    
                                  str = "yes";   
                              }    else{
                                 str = "no";
                             }
                               alert(str);
                         });                    
                     });    
                 });    
 </script>  

方法二:

通过name属性遍历

<script>    
                $(document).ready(function(){    
                    $("#btn").click(function(){    
                        var str = "";    
                        $("input[name='ckb']").each(function(){    
                            if($(this).is(":checked"))    
                            {    
                                 str = "yes";    
                            }    else{
                                  str = "no";   
                           }
                             alert(str);
                        });     
                    });    
                });    
</script>

注意:checkbox被选中checked="checked",未选择则是undefined

 

jquery操作复选框(checkbox)的12个小技巧总结

1、获取单个checkbox选中项(三种写法)

$("input:checkbox:checked").val()

或者

$("input:[type='checkbox']:checked").val();

或者

$("input:[name='ck']:checked").val();

2、 获取多个checkbox选中项

1 $('input:checkbox').each(function() {
2         if ($(this).attr('checked') ==true) {
3                 alert($(this).val());
4         }
5 });

3、设置第一个checkbox 为选中值

$('input:checkbox:first').attr("checked",'checked');

或者

$('input:checkbox').eq(0).attr("checked",'true');

4、设置最后一个checkbox为选中值

$('input:radio:last').attr('checked', 'checked');

或者

$('input:radio:last').attr('checked', 'true');

5、根据索引值设置任意一个checkbox为选中值

$('input:checkbox).eq(索引值).attr('checked', 'true');索引值=0,1,2....

或者

$('input:radio').slice(1,2).attr('checked', 'true');

6、选中多个checkbox同时选中第1个和第2个的checkbox

$('input:radio').slice(0,2).attr('checked','true');

7、根据Value值设置checkbox为选中值

$("input:checkbox[value='1']").attr('checked','true');

8、删除Value=1的checkbox

$("input:checkbox[value='1']").remove();

9、删除第几个checkbox

1 $("input:checkbox").eq(索引值).remove();索引值=0,1,2....
2 //如删除第3个checkbox:
3 $("input:checkbox").eq(2).remove();

10、遍历checkbox

1 $('input:checkbox').each(function (index, domEle) {
2 //写入代码
3 });

11、全部选中

1 $('input:checkbox').each(function() {
2         $(this).attr('checked', true);
3 });

12、全部取消选择

1 $('input:checkbox').each(function () {
2         $(this).attr('checked',false);
3 });
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值