jQuery以编程方式取消选中并重新选中复选框

时间:2016-02-07 12:31:29

标签: javascript jquery twitter-bootstrap checkbox

我有一个带有表单的bootstrap模式,这意味着我需要以编程方式设置复选框。当我尝试以编程方式选择时,取消选择然后重新选中该复选框,则不会进行重新选择。

每当我致电.attr('checked', false);时,以下.attr('checked', true)似乎无法进行更改。

如何在取消选中复选框后检查该复选框?

HTML

<input value="None" name="hazards[]" id="hazard1" type="checkbox">

的jQuery

$('#hazard1').attr('checked', true); //automated input check
$('#hazard1').attr('checked', false); //User cancels form and unchecks input
$('#hazard1').attr('checked', true); //Reopens form, but doesnt get checked

1 个答案:

答案 0 :(得分:1)

感谢 Stryner 指出这个我忽略的东西的快速解决方案。

解决方案是简单地将.attr()替换为.prop()。这是一种替换.attr的更新语法。与仅提供字符串的'attribute'不同,'property'提供了更多关于其属性类型的信息,允许使用bool(复选框需要)。

.prop() vs .attr()