问题

我需要检查复选框的checked属性并使用jQuery根据检查属性执行操作.

例如,如果选中年龄复选框,那么我需要显示一个文本框来输入年龄,否则隐藏文本框.

但以下代码默认返回false:

 if ($('#isAgeSelected').attr('checked'))
{
    $("#txtAge").show();
}
else
{
    $("#txtAge").hide();
} 
 <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 selected
</div> 

如何成功查询checked属性?

  最佳答案

如何成功查询已检查的属性?

复选框 DOM 元素的 checked 属性将给出元素的 checked 状态。

鉴于现有代码,您可以这样做:

 if(document.getElementById('isAgeSelected').checked) {
    $("#txtAge").show();
} else {
    $("#txtAge").hide();
}
 

但是,有一种更先进的方法来做到这一点,使用 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> 

  相同标签的其他问题

javascriptjqueryhtmlcheckbox