在修改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值。
时间: 2024-09-23 04:41:13