HTMLcheckbox的checked属性的值是多less?
我们都知道如何在HTML中形成一个checkboxinput:
我不知道 – 检查checkbox的技术上正确的值是多less? 我已经看到了这些工作:
答案不重要吗? 我看不出有什么证据可以从标准本身中标出正确的答案:
checkbox(和单选button)是可以由用户切换的开/关开关。 控制元素的checked属性设置时,开关处于“on”状态。 提交表单时,只有“打开”checkbox控件才能成功。 表单中的多个checkbox可能共享相同的控件名称。 因此,例如,checkbox允许用户为同一个属性select多个值。 INPUT元素用于创buildcheckbox控件。
规范作者会说什么是正确的答案? 请提供有据可依的答案。
严格地说,你应该把一些有意义的东西 – 根据这里的规范,最正确的版本是:
对于HTML,您也可以使用空属性语法 checked="" ,甚至可以简单地checked (对于更严格的XHTML,这是不支持的 )。
然而,实际上,大多数浏览器将支持引号之间的任何值。 以下全部将被检查:
只有以下几点才会被取消选中:
另请参阅关于disabled="disabled"类似问题。
HTML5规范 :
禁用的内容属性是布尔属性。
元素上布尔属性的存在表示真值,缺less属性表示假值。
如果该属性存在,则其值必须是空string,或者是该属性规范名称的ASCII不区分大小写的匹配值,不带前导或尾随空格。
结论 :
以下是有效的,等同的和真实的 :
以下是无效的 :
缺less该属性是错误的唯一有效语法:
build议
如果你关心写有效的XHTML,使用checked="checked" ,因为是无效的XHTML(但是有效的HTML)和其他的select是不太可读的。 否则,只需使用因为它更短。
这些同样有效。 在JavaScript中:
input.checked = true; input.setAttribute("checked"); input.setAttribute("checked","checked");
你想这个我认为: checked='checked'
检查
检查=“”
检查=“选中”
是等同的;
根据规格checkbox '—-ⓘchecked =“checked”或“”(空string)或空指定该元素表示一个选定的控件.—“
这是一个非常疯狂的城镇,唯一的方法,使检查错误是省略任何价值观。 使用Angular 1.x,你可以这样做:
如果你需要不加限制的话,这会更加理智。
那么,使用它,我不认为重要的事情(类似于禁用和只读),我个人使用checked =“checked”,但如果你试图操纵它们与JavaScript,你使用true / false