HTML-Attribut: required

Das Boolean required-Attribut gibt, falls vorhanden, an, dass der Benutzer einen Wert für die Eingabe festlegen muss, bevor das zugehörige Formular gesendet werden kann.

Das required-Attribut wird von den text, search, url, tel, email, password, date, month, week, time, datetime-local, number, checkbox, radio, file, <input>-Typen sowie den Formularsteuerelementen <select> und <textarea> unterstützt. Ist es bei einem dieser Eingabetypen und Elemente vorhanden, wird die :required Pseudoklasse übereinstimmen. Ist das Attribut nicht enthalten, wird die :optional Pseudoklasse übereinstimmen.

Das Attribut wird nicht von den range und color Eingabetypen unterstützt oder ist dafür relevant, da beide Standardwerte haben. Typ color hat standardmäßig #000000. Typ range hat standardmäßig den Mittelwert zwischen min und max — mit min und max, die standardmäßig auf 0 und 100 in den meisten Browsern gesetzt sind, sofern nicht anders angegeben. required wird auch vom hidden Eingabetyp nicht unterstützt — Benutzer können nicht erwartet werden, ein verstecktes Formularfeld auszufüllen. Schließlich wird required bei keinem Button-Eingabetyp unterstützt, einschließlich image.

Im Fall einer gleichnamigen Gruppe von radio-Buttons muss, wenn ein einzelner Radio-Button in der Gruppe das required-Attribut hat, ein Radio-Button in dieser Gruppe ausgewählt werden, auch wenn es nicht der ist, auf den das Attribut angewendet wird. Um die Wartung des Codes zu verbessern, wird empfohlen, entweder bei jedem gleichnamigen Radio-Button in der Gruppe das required-Attribut einzuschließen oder bei keinem.

Im Fall einer gleichnamigen Gruppe von checkbox Eingabetypen sind nur die Checkboxen mit dem required-Attribut erforderlich.

Hinweis: Die Einstellung von aria-required="true" teilt einem Screenreader mit, dass ein Element (jedes Element) erforderlich ist, hat jedoch keinen Einfluss auf die Optionalität des Elements.

Attribut-Interaktionen

Da ein schreibgeschütztes Feld nicht geändert werden kann, hat required bei Eingaben mit dem ebenfalls festgelegten readonly-Attribut keine Auswirkung.

Benutzerfreundlichkeit

Wenn Sie das required-Attribut verwenden, stellen Sie in der Nähe des Steuerelements eine sichtbare Angabe bereit, die den Benutzer darüber informiert, dass der <input>, <select> oder <textarea> erforderlich ist. Darüber hinaus sollten Sie erforderliche Formularsteuerelemente mit der :required Pseudoklasse anvisieren und sie so gestalten, dass sie darauf hinweisen, dass sie erforderlich sind. Dies verbessert die Benutzerfreundlichkeit für sehende Benutzer. Hilfstechnologie sollte den Benutzer basierend auf dem required-Attribut darüber informieren, dass das Formularsteuerelement obligatorisch ist, aber aria-required="true" zu ergänzen, schadet nicht, falls die Kombination aus Browser / Screenreader required noch nicht unterstützt.

Einschränkungsprüfung

Wenn das Element erforderlich ist und der Wert des Elements die leere Zeichenkette ist, leidet das Element an valueMissing und das Element wird mit der :invalid Pseudoklasse übereinstimmen.

Zugänglichkeitsbedenken

Stellen Sie eine Anzeige für Benutzer bereit, die ihnen mitteilt, dass das Formularsteuerelement erforderlich ist. Stellen Sie sicher, dass die Meldung facettenreich ist, z. B. durch Text, Farbe, Markierungen und Attribut, damit alle Benutzer die Anforderungen verstehen, unabhängig davon, ob sie Farbenblindheit, kognitive Unterschiede haben oder einen Screenreader verwenden.

Beispiel

HTML

html
<form>
  <div class="group">
    <input type="text" />
    <label>Normal</label>
  </div>
  <div class="group">
    <input type="text" required />
    <label>Required</label>
  </div>
  <input type="submit" />
</form>

Ergebnis

Spezifikationen

Specification
HTML
# attr-input-required
HTML
# attr-select-required
HTML
# attr-textarea-required

Browser-Kompatibilität

html.elements.input.required

html.elements.select.required

html.elements.textarea.required

Siehe auch