7

我正在设置我的 jquery 移动复选框,像这样..

 $("#checkbox-2a").attr("checked", settings.DEnabled).checkboxradio("refresh");

这是标记

 <fieldset data-role="controlgroup" data-mini="true" style="text-align:center;">
            <input type="checkbox" name="checkbox-2a" id="checkbox-2a" class="custom" />
            <label for="checkbox-2a">
                Enable D</label>
..

复选框被正确选中。但是现在当我想用这段代码检索一个值时..

  settings.DEnabled = $("#checkbox-2a").attr("checked");

当我调试它返回“已检查”时,当我查看标记时,即使在 ui 中正确的检查布尔值时复选框正在更新。我在标记中没有看到“已检查”属性。

如何获取/查找复选框的值?

4

1 回答 1

16

attr不返回布尔值,您可以使用prop方法:http ://api.jquery.com/prop/#entry-examples

settings.DEnabled = $("#checkbox-2a").prop("checked");

is方法:

settings.DEnabled = $("#checkbox-2a").is(":checked");
于 2012-09-12T16:09:45.963 回答