又犯老错误,jquery实现全选删除

<body>
<input type="checkbox" name="">1</br>
<input type="checkbox" name="">2</br>
<input type="checkbox" name="">3</br>
<input type="checkbox" name="">4</br>
<input type="checkbox" name="" id="all">全选删除</br>
 <script type="text/javascript" src="jquery-1.5.1.js"> </script>
 <script type="text/javascript">
 $("#all").click(                                               //  一开始把这本遗漏啦,想当然认为,只需要个判断就行,而忘记判断是在点击行为后发生的
function(  ){
if($(this).is(":checked")){                
        $(":checkbox").attr("checked",true);
    }else{
        $(":checkbox").attr("checked",false);
    }
} )

 </script>

 </body>

错误之处:

    一开始忘记写$("#all").click,直接if($(this).is(":checked"))就将所有的checkbox勾选,但这里恰恰忘记了注册事件,其实全选是在点击id=all之后的,所以应该要注册个事件,否则浏览器一开始就把代码全部读完,并不会返回再去判断,id=all是否被选,如果要让浏览器返回,必须给它注册个事件。

第二步:

         id=shan是个button按纽

$("#shan").click(function(  ){
var count=$(":checkbox:checked:not('#all')").length               // 判断有多少个checkbox被选中,不包括全选checkbox本身,统计数字
if(count>0){                                                                                    // 大于0则说明有被选中的
$(":checkbox").each(function(  ){                               //遍历,如果是被选中的,则删除
if(this.checked){                                                

  //也可不用遍历,直接$(":checkbox:checked").remove(  )
$(this).remove( );
}
}
)}
})


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值