jQuery接收复选框状态
我正在以这种方式更改复选框状态: $(this).attr("checked", 'checked');
在此之后我想收到复选框状态,但我得到了这个:
$(this).attr('checked'): "checked" $(this).is(':checked'): false
怎么会这样?
PS也许我没有正确地通过jQuery更改复选框状态?
正确的方法是$(this).prop('checked')
返回布尔属性而不是属性(这是一个字符串)。
使用.prop()
还可以设置检查状态: $(this).prop('checked', true_or_false);
正如您在http://jsfiddle.net/ThiefMaster/QR2fL/上看到的那样, .attr('checked')
返回属性的初始值 – 在选中/取消选中复选框时,它不会更改。
你不应该选中这样的复选框:
$(this).attr("checked", 'checked');
但是像这样
$(this).prop("checked", true);
要检查是否选中了复选框,您可以使用:
$(this).prop('checked');
要么
$(this).is(':checked');
返回布尔值