How do I check whether a checkbox is checked in jQuery?
How do I successfully query the checked property?
The checked
property of a checkbox DOM element will give you the checked
state of the element.
Given your existing code, you could therefore do this:
if(document.getElementById('isAgeSelected').checked) { $("#txtAge").show();} else { $("#txtAge").hide();}
However, there's a much prettier way to do this, using toggle
:
$('#isAgeSelected').click(function() { $("#txtAge").toggle(this.checked);});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><input type="checkbox" id="isAgeSelected"/><div id="txtAge" style="display:none">Age is something</div>
Use jQuery's is() function:
if($("#isAgeSelected").is(':checked')) $("#txtAge").show(); // checkedelse $("#txtAge").hide(); // unchecked
Using jQuery > 1.6
<input type="checkbox" value="1" name="checkMeOut" id="checkMeOut" checked="checked" />// traditional attr$('#checkMeOut').attr('checked'); // "checked"// new property method$('#checkMeOut').prop('checked'); // true
Using the new property method:
if($('#checkMeOut').prop('checked')) { // something when checked} else { // something else when not}