2016-08-09 176 views
3

Der ausgewählte Menüwert, der auf dem Server veröffentlicht wird, sollte mit dem Text im Element OPTION identisch sein.Ist ein Wertattribut für ein HTML-SELECT-Element erforderlich?

In dem Browser, den ich verwende, ergeben die folgenden identische Ergebnisse.

Wird das zweite Skript "korrekt" und Cross-Browser unterstützt?

<select> 
    <option value="AAA">AAA</option> 
    <option value="BBB">BBB</option> 
    <option value="CCC">CCC</option> 
</select> 

<select> 
    <option>AAA</option> 
    <option>BBB</option> 
    <option>CCC</option> 
</select> 

Antwort

4

Nach MDN das Attribut ist optional, da der Wert aus dem Text zu entnehmen ist, wenn es

weggelassen Der Inhalt dieses Attributs den Wert darstellt eingereichten mit dem Formular werden soll wird diese Option ausgewählt . Wenn dieses Attribut nicht angegeben ist, wird der Wert aus dem Textinhalt der Option Element übernommen.

3

Ja, Sie können das Wertattribut weglassen.

vom w3 Standards for <option> tags Genommen:

Der Tag kann ohne Attribute verwendet werden, aber Sie in der Regel den Wert Attribut benötigen, die angibt, was an den Server gesendet wird.

Eine einfache Google-Suche ist ein langer Weg.

+1

Wie viel möchten Sie wetten, dass meine Antwort nicht ausgewählt wurde, weil ich dem OP gesagt habe, vor der Nachfrage zu suchen? Die Wahrheit tut weh. :) –

2

value Das Attribut ist optional gemäß der HTML 4.01 und 5-Spezifikationen.

https://www.w3.org/TR/html401/interact/forms.html#h-17.6

value = Dieses Attribut gibt den Anfangswert der Steuerung. Wenn dieses Attribut nicht festgelegt ist, wird der Anfangswert auf den Inhalt des OPTION-Elements festgelegt.

https://www.w3.org/TR/html5/forms.html#the-option-element

Der Wert Attribut liefert einen Wert für das Element. Der Wert eines Optionselements ist der Wert des Wertinhaltattributs, falls vorhanden, oder, falls nicht, der Wert des [...] Textattributs des Elements.

2

Die kurze Antwort ist nein. Das value Attribut ist nicht erforderlich aber definitiv vorteilhaft. In der Regel nur eine andere Möglichkeit zum Erfassen der Option ausgewählt aus JS.