HTML复选框的checked属性的值是多少?
我们都知道如何在HTML中形成复选框输入:
<input name="checkbox_name" id="checkbox_id" type="checkbox">
我不知道 - 选中复选框的技术上正确的值是多少? 我已经看到了这些工作:
<input name="checkbox_name" id="checkbox_id" type="checkbox" checked>
<input name="checkbox_name" id="checkbox_id" type="checkbox" checked="on">
<input name="checkbox_name" id="checkbox_id" type="checkbox" checked="yes">
<input name="checkbox_name" id="checkbox_id" type="checkbox" checked="checked">
<input name="checkbox_name" id="checkbox_id" type="checkbox" checked="true">
严格地说,你应该把有意义的东西 - 根据这里的规格,最正确的版本是:
<input name=name id=id type=checkbox checked=checked>
对于HTML,您也可以使用空属性语法checked=""
,或者甚至简单地checked
(对于更严格的XHTML,这不受支持)。
然而,实际上,大多数浏览器都会支持引号之间的任何值。 以下全部将被检查:
<input name=name id=id type=checkbox checked>
<input name=name id=id type=checkbox checked="">
<input name=name id=id type=checkbox checked="yes">
<input name=name id=id type=checkbox checked="blue">
<input name=name id=id type=checkbox checked="false">
只有以下内容才会被取消选中:
<input name=name id=id type=checkbox>
另请参阅关于disabled="disabled"
类似问题。
HTML5规范 :
http://www.w3.org/TR/html5/forms.html#attr-input-checked:
禁用的内容属性是布尔属性。
http://www.w3.org/TR/html5/infrastructure.html#boolean-attributes:
元素上布尔属性的存在表示真值,缺少属性表示假值。
如果该属性存在,则其值必须是空字符串,或者是该属性规范名称的ASCII不区分大小写匹配的值,且不带前导或尾随空格。
结论 :
以下是有效的,等同的和真实的 :
<input type="checkbox" checked />
<input type="checkbox" checked="" />
<input type="checkbox" checked="checked" />
<input type="checkbox" checked="ChEcKeD" />
以下内容无效 :
<input type="checkbox" checked="0" />
<input type="checkbox" checked="1" />
<input type="checkbox" checked="false" />
<input type="checkbox" checked="true" />
缺少该属性是唯一有效的false语法:
<input />
建议
如果您关心编写有效的XHTML,请使用checked="checked"
,因为<input checked>
无效XHTML(但有效的HTML)和其他替代方法的可读性较差。 否则,只需使用<input checked>
因为它更短。
<input ... checked />
<input ... checked="checked" />
这些同样有效。 在JavaScript中:
input.checked = true;
input.setAttribute("checked");
input.setAttribute("checked","checked");
链接地址: http://www.djcxy.com/p/1639.html
上一篇: What's the proper value for a checked attribute of an HTML checkbox?