【发布时间】:2010-10-28 10:52:19
【问题描述】:
我需要检查一个复选框的checked 属性,并使用jQuery 根据选中的属性执行一个操作。
例如,如果age复选框被选中,那么我需要显示一个文本框来输入age,否则隐藏文本框。
但下面的代码默认返回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属性?
【问题讨论】:
-
在此处查看使用 jQuery 的其他一些方法 stackoverflow.com/a/22019103/1868660
-
为什么不
$('#isAgeSelected').checked -
从 jquery 1.6 开始,处理属性和属性的方式发生了重大变化。对于您的情况,以下应该有效: if($('#isAgeSelected').prop("checked")) { $("#txtAge").show(); } 其他 { $("#txtAge").hide(); if 语句中的条件将根据复选框的选中/未选中状态简单地返回 true 或 false。有关更多详细信息,请参阅this 链接上的属性与属性部分。
-
要获得全面(和正确)的答案,请参阅:stackoverflow.com/questions/426258/…
-
由于jQuery选择器返回数组,所以可以使用
$('#isAgeSelected')[0].checked
标签: javascript jquery html checkbox