本文实例分析了基于jquery的checkbox全选问题。分享给大家供大家参考,具体如下:
最近开发项目时遇到一个很奇怪的问题,就是checkbox的全选与全不选
使用jQuery的框架。一直是使用
//检测选中的checkbox
$('input[name="abc"]:checked').each(function(){})
但是,发现我需要全选的时候,使用
$('input[name="abc"]').attr('checked',true);
$('input[name="abc"]').attr('checked',false);
时,第一次加载的时候管用,再次点击就只显示它自己了
但是点击的时候,查看源代码,属性checked已经添加上了
百思不得其解,最后搜索到,原来是 attr属性 对于checked来说他不会使dom样式改变,只会将它的属性值改变,jquery提供了取而代之的方法,如下就可以了
在原版的基础上做了一下修正评论没有提交正文的问题特价商品的调用连接问题去掉了一个后门补了SQL注入补了一个过滤漏洞浮动价不能删除的问题不能够搜索问题收藏时放入购物车时出错点放入购物车弹出2个窗口修正主题添加问题商家注册页导航连接问题销售排行不能显示更多问题热点商品不能显示更多问题增加了服务器探测 增加了空间使用查看 增加了在线文件编辑增加了后台管理里两处全选功能更新说明:后台的部分功能已经改过前台
$('input[name="abc"]').prop('checked',true);
$('input[name="abc"]').prop('checked',false);
但是,问题又来了,不全选时我检测不到哪个元素被点击了,然后就在name上做文章
$('input[name="abc[]:checked"').each(function(i){});
//或者
$('input[name="abc[]"').each(function(i){
var flag = $(this).prop('checked');
if(flag){
//$(this) 即为选中元素
}
})
问题解决。









