I’m changing checkbox status this way: $(this).attr("checked", 'checked');
After this I want to receive checkbox status, but I got this:
$(this).attr('checked'): "checked"
$(this).is(':checked'): false
How this can be?
P.S. Maybe I’m not correctly changing checkbox status via jQuery?
The proper way is
$(this).prop('checked')to return the boolean property instead of the attribute (which is a a string).Using
.prop()you can also set the checked state:$(this).prop('checked', true_or_false);As you can see on http://jsfiddle.net/ThiefMaster/QR2fL/,
.attr('checked')returns the initial value of the attribute – it does not changed when checking/unchecking the checkbox.