是没有价值的选择选项,有效吗?

时间:2015-12-14 11:56:07

标签: html

我们说我有这个选择。如果我发布此值,则值为:city 1,city 2,city 3和city 4.我不想给它们一个值,因为该值与option-name相同。

这可以吗?

<select>
    <option>City 1</option>
    <option>City 2</option>
    <option>City 3</option>
    <option>City 4</option>
</select>

2 个答案:

答案 0 :(得分:17)

如果没有值,您的文字将被使用。您可以在HTML标准中找到此信息:

  

value属性为元素提供值。 option元素的值是value content属性的值(如果有),或者,如果没有,则为元素的text IDL属性的值。
  https://html.spec.whatwg.org/multipage/forms.html#the-option-element

或W3C Wiki

  

为元素提供值。   如果没有,则option元素的值是元素的textContent   https://www.w3.org/wiki/HTML/Elements/option

测试用例

使用以下代码段,您可以测试选项的行为:http://jsfiddle.net/ghqp08kr/

&#13;
&#13;
<form action="http://posttestserver.com/post.php" method="post">
  <select name="values">
    <option value="with-value">With Value</option>
    <option>Without Value</option>
    <option value="">With Empty Value</option>
  </select>
  <input type="submit"/>
</form>
&#13;
&#13;
&#13;

<!-- With Value -->
key: 'values' value: 'with-value'

<!-- Without Value -->
key: 'values' value: 'Without Value'

<!-- Without Empty Value -->
key: 'values' value: ''

答案 1 :(得分:2)

虽然可以接受,但不建议这样做,因为所有浏览器和网络服务器都解释相同的事情。提供这样的值总是更好,即使它们只是重复:

<select>
    <option value="City 1">City 1</option>
    <option value="City 2">City 2</option>
    <option value="City 3">City 3</option>
    <option value="City 4">City 4</option>
</select>

来自docs

  

value

     

如果选择此选项,则此属性的内容表示要随表单提交的值。如果省略此属性,则从选项元素的文本内容中获取值。