使用Jquery实现checkboxlist 全选 和取消全选 只第一次全选起作用

fjm_520 2013-03-23 03:28:02
如题。我使用jquery操作checkboxlist,全选,取消全选。
我全选后,取消全选,再点击全选,却选不上。我手动选上,然后点击取消全选,能够取消。

代码如下:
$("#inputSelectAll").click(function(e) {
if ($("#inputSelectAll").val() == "全选") {
$("#<%=CheckBoxList1.ClientID %> input:checkbox").each(function() { $(this).attr("checked", true); });
$("#inputSelectAll").val("取消");
}
else {
$("#<%=CheckBoxList1.ClientID %> input:checkbox").each(function() { $(this).attr("checked", false); });
$("#inputSelectAll").val("全选");
}


});
...全文
1629 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
lhh_learning 2015-09-09
  • 打赏
  • 举报
回复
q491573266 2014-11-11
  • 打赏
  • 举报
回复
引用 10 楼 z710162063 的回复:
把attr换成prop就行了
搞了半天,尝试了各种方法,受教了。
水墨胭脂 2014-10-21
  • 打赏
  • 举报
回复
“傻瓜一号”讲的很明白:
引用 4 楼 chukaif 的回复:
只能用一次是由于jquery版本变更带来的问题,老一点的版本是可以的,新的版本不可以使用attr来设置选中状态了,可以使用js原生的方法this.checked=true/false;
再结合一下
引用 10 楼 z710162063 的回复:
把attr换成prop就行了
这样就齐活了!!!
z710162063 2014-10-09
  • 打赏
  • 举报
回复
把attr换成prop就行了
shiyonghu 2014-09-05
  • 打赏
  • 举报
回复
非常感谢此贴,受益匪浅,这个问题搞了变天
fatmnonkey64 2014-08-15
  • 打赏
  • 举报
回复
纠结了2个小时,找到此贴,一试果然
追梦启航 2014-04-23
  • 打赏
  • 举报
回复
我也折腾了一上午,楼上“笨瓜一号”讲的很明白。
絮雪 2014-04-16
  • 打赏
  • 举报
回复
同学习了
常常要奋斗 2014-04-01
  • 打赏
  • 举报
回复
学习了,真是折腾了一上午啊!
笨瓜1号 2013-07-25
  • 打赏
  • 举报
回复
只能用一次是由于jquery版本变更带来的问题,老一点的版本是可以的,新的版本不可以使用attr来设置选中状态了,可以使用js原生的方法this.checked=true/false;
fjm_520 2013-03-25
  • 打赏
  • 举报
回复
改成: $("#<%=CheckBoxList1.ClientID %> input:checkbox").each(function() { this.checked = true; }); 这样就可以了。 真搞不明白~~
  • 打赏
  • 举报
回复
chrome测试没有问题啊。 http://jsfiddle.net/J3tbX/
裸奔的蜗牛 2013-03-23
  • 打赏
  • 举报
回复
用bind()试一下

87,991

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧