A-A+
总结jQuery checkbox全选/反选代码
用到最多的就是多列表数据管理操作了,我们通常会需要checkbox全选与反选功能了,下文就为各位整理一下jquery对checkbox全选反选的例子整理。
在修改Hi GPA的时候需要增加一个全选用户的功能,结果被坑惨了。
首先,最终代码是这么写的:
- var text = $('#select-all-student').html();
- if (text == '全选') {
- $('input[name="studentNumber"]').prop('checked', true);
- $('#select-all-student').html('取消全选')
- } else {
- $('input[name="studentNumber"]').prop('checked', false);
- $('#select-all-student').html('全选');
- }
这里集成了一个全选和反选的功能,可以选中所有name为studentNumber的checkbox。
当然,最初我不是这么写的,而是使用了attr()结果最终导致了只能进行一次的全选反选,当时简直感觉醉醉哒。
折腾了一个小时之后感觉这压根就不是个事,为啥别人写的东西就可以,无奈,查了一下:
jQuery API明确说明,1.6+的jQuery要用prop,尤其是checkBox的checked的属性的判断,即如下代码:
- $("input[type='checkbox']").prop("checked");
- $("input[type='checkbox']").prop("disabled", false);
- $("input[type='checkbox']").prop("checked", true);
应该使用.prop()来替代.attr()来设置disabled和checked。.val()用于获取或者设置其value值。