一尘不染

如何检查jQuery中是否已选中复选框?

html

我需要检查复选框的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属性?


阅读 347

收藏
2020-05-10

共1个答案

一尘不染

checked复选框DOM元素的属性将为您提供元素的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>
2020-05-10