2015-11-02 75 views
0

我遇到复选框状态的编程更改问题。我希望能够从数据库加载一个值(true/false)并相应地显示它。为了测试,我使用了一个按钮,它触发“更改”属性的更改,模拟读取数据库。点击此按钮可以更改该属性,点击后我可以确认该属性,但复选框的视觉状态保持不变。复选框的视觉状态不变

这里是的jsfiddle链接http://jsfiddle.net/xLrFq/203/

HTML:

<input id="check1" type="checkbox" /> 
<label for="check1">Check me</label> 
<p></p> 
<button id="btnSet">Set Checked</button> 

的JScript:

$("input").change(function() { 
var $input = $(this); 
$("p").html(".attr('checked'): <b>" + $input.attr("checked") + "</b><br>" + 
    ".prop('checked'): <b>" + $input.prop("checked") + "</b><br>" + 
    ".is(':checked'): <b>" + $input.is(":checked") + "</b>"); 
    }) 
    .change(); 

$("#btnSet").click(function() { 
    $("#check1").prop('checked',true).change(); 
}); 

回答

1

你必须调用checkboxradio("refresh")您修改checked属性更新的视觉状态后,元素(请参阅API)。

Updated JSFiddle

+0

但是为什么? *插入gif * – OddDev

+0

这样做。谢谢! –