點擊複選框應該給予警報檢查,如果選中並給出警報不檢查,如果不是。代碼如下:
<input type = "checkbox" id = "all" value="all" /> MyCheckbox
<script src="jquery-2.1.4.js"></script>
<script type="text/javascript">
$("input[type=checkbox]").click(function(){
if ($(this).attr("checked")) {
alert("checked");
}
else{
alert("not checked");
}
});
</script>
最初複選框未被選中。只要我點擊它,調試器就會顯示它的值爲true。現在控件應該輸入if {} block,因爲它的值是true,但是它的輸入是else {} block。 (我正在使用斷點)。
爲什麼會發生這種情況。請幫忙嘗試幾個小時。
您也可以使用'.prop()'。有關'attr()'和'prop()'之間區別的一個很好的答案可以在這裏找到(http://stackoverflow.com/questions/5874652/prop-vs-attr) –
怎麼樣?你可以使用'.prop(「checked」,true)'來檢查複選框是否被選中。 *編輯*:好的,上面的評論被刪除。這個評論是針對前一個... –
http://api.jquery.com/prop/甚至有一個例子顯示了attr()和prop()之間的區別。 – sinisake