問題描述
看了 HTML 規範,但不能使頭或尾:http://www.w3.org/TR/html5/the-input-element.html#attr-input-checked
檢查 HTML 中的核取方塊 (不是動態) 的正確方法是什麼?
checked="true"
checked="checked"
取消選中核取方塊的正確方法是什麼?
<input type="checkbox" /> with no checked attribute
checked="false"
checked="none"
在哪裡檢查 HTML 規範來檢查/取消選中核取方塊?
最佳解決辦法
<input type="checkbox" checked="checked" />
或簡單地
<input type="checkbox" checked />
選中核取方塊。未勾選的勾選屬性 (<input type="checkbox" />) 核取方塊。
參考:http://www.w3.org/TR/html-markup/input.checkbox.html#input.checkbox.attrs.checked
次佳解決辦法
根據 HTML5 草案,checked 屬性是 「boolean attribute」,「元素上的布林屬性的存在表示真實值,而不存在屬性則表示虛假值」 。屬性的名稱事情足夠了。因此,要使一個核取方塊初始檢查,您使用
<input type=checkbox checked>
預設情況下,在沒有 checked 屬性的情況下,最初未選中核取方塊:
<input type=checkbox>
保持這種方式可以使它們變得簡單,但是如果您需要遵循 XML 語法 (即在 XHTML 線性化中使用 HTML5),則不能單獨使用屬性名稱。然後,允許的 (按照 HTML5 草稿) 的值是空字串和字串 checked,不區分大小寫。例:
<input type="checkbox" checked="checked" />
第三種解決辦法
<input type="checkbox" checked />
HTML5 不要求屬性具有值
第四種辦法
您可以在 w3schools 上參考此頁面,但基本上您可以使用以下任何一種:
<input checked>
<input checked="checked">
<input checked="">
第五種辦法
在 jQuery 中:
選中核取方塊:
$("#checkboxid").attr("checked","checked");
要取消選中核取方塊:
$("#checkboxid").removeAttr("checked");
其他答案提示解決方案,並指出您進一步挖掘之後的檔案將讓您得到這個答案。 Jukka K. Korpela 有理由這是正確的答案,基本上我按照他的連結,然後查詢 jQuery 檔案來獲得這個結果。只是想到我會儲存未來的人誰找到這篇文章那些額外的步驟。
第六種辦法
羅伯特答案的補充答案 http://jsfiddle.net/ak9Sb/在 jQuery 中
獲取/設定核取方塊狀態時,可能會遇到這些現象:
.trigger("click");
檢查未勾選的核取方塊,但不要新增 checked 屬性。如果使用觸發器,不要嘗試使用”checked” 屬性獲取狀態。
.attr("checked", "");
不取消選中核取方塊…
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。