<select>?</select> </option>中<option>“label”属性的重点是什么?

时间:2010-10-11 12:03:05

标签: html

除了只有IE7 +支持它之外,为什么要使用this example这样的东西呢?即:

<select>
  <option label="Volvo">Volvo (Latin for "I roll")</option>
  <option label="Saab">Saab (Swedish Aeroplane AB)</option>
</select>

毕竟,'拉丁语为'我滚'和'瑞典飞机AB'丢失(即,仅保留在源代码中)。

3 个答案:

答案 0 :(得分:26)

在该示例中,文本将在提交表单时发送到服务器。

鉴于value属性的存在,它是多余的。

答案 1 :(得分:10)

根据w3c的definition of the option tag

“此属性允许作者为选项指定比OPTION元素的内容更短的标签。指定时,用户代理应使用此属性的值而不是OPTION元素的内容作为选项标签“。

大卫的回答非常好,我只是想添加官方定义的链接。 :d

答案 2 :(得分:6)

label属性明确设置标签。允许我改进您的示例:

<select>
  <option label='Volvo (Latin for "I roll")'>Volvo</option>
  <option label="Saab (Swedish Aeroplane AB)">Saab</option>
</select>

<option>的文本内容用作以下两者的默认值:可视标签和该选项的“技术”表单/脚本值。您可以分别使用labelvalue属性覆盖每个默认值。

这三个都可以通过Javascript访问。

由于Firefox不支持label 中的<option>(但它适用于<optgroup>),因此请始终为<option>设置文本内容如果需要,使用value属性标记并覆盖“技术”值。