2015-11-02 122 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

這樣做。謝謝! –