复选框全选反选只能用一次

我用jQuery写的一个全选反选的小功能,但是发现为何只能用一次?第一次可以全选反选都正常,等到下一轮的时候就不管用了,但是alert提示出的却是正确的。下面是jQuer... 我用jQuery写的一个全选反选的小功能,但是发现为何只能用一次?
第一次可以全选反选都正常,等到下一轮的时候就不管用了,但是alert提示出的却是正确的。
下面是jQuery代码,只有一行,我想这样应该可以实现的。
------------------------------------------------------------------------------
//复选框的全选和取消全选function ckAll(t){ alert(t.checked); $("input[type='checkbox']").attr("checked", t.checked);}
------------------------------------------------------------------------------
页面是这样的,如图:

ckAll(t)这个函数是家在红色箭头所指的复选框上的,用的是onClick事件,函数内穿的是this,即当前对象。
蓝色框框圈起来的部分是子复选框,当单击主复选框时全部选中子复选框,再次单击取消对子复选框的选中状态。
代码思路是这样的:
我想,每个复选框都有一个选中状态,即一个布尔值,当值为true时就是选中,否则就没有选中。
基于这个概念,单击时拿到当前单击复选框(主复选框)的选中状态,并赋给当前页面的所有复选框,应该就可以实现这样的功能了。
---------------------
但是,这样做实际上只能一次,就是只能进行一次的全选和反选,当第二轮的时候就没有效果了,百思不得其解,为什么呢?望大神们赐教!~
展开
 我来答
wrp920227
2015-01-23 · TA获得超过129个赞
知道小有建树答主
回答量:194
采纳率:0%
帮助的人:116万
展开全部
$("input[type='checkbox']").prop("checked", true);用prop函数就可以了、可以百度一下prop个attr的区别
追问
真的成功了,为什么呢?
追答
jquery1.6版本以上对attr进行升级,多了个prop、prop是对页面效果的渲染。attr只是对值执行更改,所以通常同来取值或设置。像单选框复选框之类的,设置之后页面效果需要重新渲染的建议用prop
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式