15

我在我的网站上使用普通选择和多选框。我应该使用<option selected="selected">还是仅<option selected>用于选定的项目?

4

3 回答 3

27

HTML5 规范

https://www.w3.org/TR/html5/forms.html#attr-option-selected

选定的属性是一个布尔属性。

http://www.w3.org/TR/html5/infrastructure.html#boolean-attributes

元素上存在布尔属性表示真值,不存在该属性表示假值。

如果存在该属性,则其值必须是空字符串或与属性的规范名称匹配的不区分大小写的 ASCII 值,并且没有前导或尾随空格。

结论

以下是有效的、等价的和真实的

<option selected />
<option selected="" />
<option selected="selected" />
<option selected="SeLeCtEd" />

以下是无效的:

<option selected="0" />
<option selected="1" />
<option selected="false" />
<option selected="true" />

缺少该属性是false的唯一有效语法:

<option />

推荐

如果您关心编写有效的 XHTML,请使用selected="selected", 因为<option selected>是无效的 XHTML(但有效的 HTML),而其他替代方案的可读性较差。否则,只需使用它,<option selected>因为它更短。

于 2016-05-30T19:29:32.647 回答
3

将选择根据 W3C 的正确方法 =“已选择”,如此处所述 http://www.w3.org/TR/html-markup/option.html#option

昆汀:不重复,因为这个问题与选择有关,同时您的回答与复选框有关

(相同的答案,不同的顺序以避免那些无法阅读完整帖子的人的“不是答案,这是评论”评论

于 2013-09-29T21:23:38.187 回答
2

如果您想在选择中设置超过 1 个选项,不要忘记添加到选择属性多个并添加到选择 [] 的名称,否则它不起作用。

<select name="mega_select[]" multiple>
  <option value="some" selected="selected">some</option>
  <option value="value" selected="selected">value</option>
  <option value="non">non</option>
</select>

于 2018-04-27T19:29:12.920 回答