patternjavascriptCritical
Setting "checked" for a checkbox with jQuery
Viewed 0 times
withjqueryforcheckedcheckboxsetting
Problem
I'd like to do something like this to tick a
or
Does such a thing exist?
checkbox using jQuery:$(".myCheckBox").checked(true);or
$(".myCheckBox").selected(true);Does such a thing exist?
Solution
Modern jQuery
Use
DOM API
If you're working with just one element, you can always just access the underlying
The benefit to using the
jQuery 1.5.x and below
The
Note that this is the approach used by jQuery's unit tests prior to version 1.6 and is preferable to using
For more context, some incomplete discussion of the changes to the handling of the
Use
.prop():$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);DOM API
If you're working with just one element, you can always just access the underlying
HTMLInputElement and modify its .checked property:$('.myCheckbox')[0].checked = true;
$('.myCheckbox')[0].checked = false;The benefit to using the
.prop() and .attr() methods instead of this is that they will operate on all matched elements.jQuery 1.5.x and below
The
.prop() method is not available, so you need to use .attr().$('.myCheckbox').attr('checked', true);
$('.myCheckbox').attr('checked', false);Note that this is the approach used by jQuery's unit tests prior to version 1.6 and is preferable to using
$('.myCheckbox').removeAttr('checked'); since the latter will, if the box was initially checked, change the behaviour of a call to .reset() on any form that contains it – a subtle but probably unwelcome behaviour change.For more context, some incomplete discussion of the changes to the handling of the
checked attribute/property in the transition from 1.5.x to 1.6 can be found in the version 1.6 release notes and the Attributes vs. Properties section of the .prop() documentation.Code Snippets
$('.myCheckbox').prop('checked', true);
$('.myCheckbox').prop('checked', false);$('.myCheckbox')[0].checked = true;
$('.myCheckbox')[0].checked = false;$('.myCheckbox').attr('checked', true);
$('.myCheckbox').attr('checked', false);Context
Stack Overflow Q#426258, score: 6457
Revisions (0)
No revisions yet.