我有一个带有表单的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
答案 0 :(得分:1)
感谢 Stryner 指出这个我忽略的东西的快速解决方案。
解决方案是简单地将.attr()
替换为.prop()
。这是一种替换.attr
的更新语法。与仅提供字符串的'attribute'不同,'property'提供了更多关于其属性类型的信息,允许使用bool(复选框需要)。