Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
Das <select>-Element des HTML repräsentiert ein Steuerelement, das ein Menü mit Optionen bereitstellt.
Das obige Beispiel zeigt die typische Verwendung von <select>. Es erhält ein id-Attribut, um für Barrierefreiheitszwecke mit einem <label> in Verbindung gebracht werden zu können, sowie ein name-Attribut, um den Namen des zugehörigen Datenpunktes zu repräsentieren, der an den Server gesendet wird. Jede Menüoption wird durch ein <option>-Element definiert, das innerhalb des <select> verschachtelt ist.
Jedes <option>-Element sollte ein value-Attribut enthalten, das den zu übermittelnden Datenwert an den Server enthält, wenn diese Option ausgewählt wird. Wenn kein value-Attribut enthalten ist, wird der Wert standardmäßig auf den im Element enthaltenen Text gesetzt. Sie können ein selected-Attribut an einem <option>-Element einschließen, um es standardmäßig auszuwählen, wenn die Seite erstmals geladen wird. Wenn kein selected-Attribut angegeben ist, wird standardmäßig das erste <option>-Element ausgewählt.
Ein <select>-Element wird in JavaScript durch ein HTMLSelectElement Objekt repräsentiert, und dieses Objekt besitzt eine value-Eigenschaft, die den Wert des ausgewählten <option> enthält.
Das <select>-Element hat einige einzigartige Attribute, die Sie zur Steuerung verwenden können, wie multiple, um anzugeben, ob mehrere Optionen ausgewählt werden können, und size, um festzulegen, wie viele Optionen gleichzeitig angezeigt werden sollen. Es akzeptiert auch die meisten der allgemeinen Formular-Eingabe-Attribute wie required, disabled, autofocus usw.
Sie können weiter <option>-Elemente innerhalb von <optgroup>-Elementen verschachteln, um separate Gruppen von Optionen im Dropdown-Menü zu erstellen. Sie können auch <hr>-Elemente einfügen, um Trennlinien zu erstellen, die visuelle Unterbrechungen zwischen den Optionen hinzufügen.
Für weitere Beispiele siehe Die nativem Formular-Widgets: Dropdown-Inhalte.
Dieses Element enthält die globalen Attribute.
autocompleteEin String, der einen Hinweis für die Autovervollständigungsfunktion eines User-Agents bereitstellt. Siehe Das HTML autocomplete-Attribut für eine vollständige Liste der Werte und Details zur Verwendung der Autovervollständigung.
autofocusDieses Boolean-Attribut ermöglicht Ihnen anzugeben, dass ein Formularfeld beim Laden der Seite den Eingabefokus haben sollte. Nur ein einziges Formularelement in einem Dokument kann das autofocus-Attribut haben.
disabledDieses Boolean-Attribut gibt an, dass der Benutzer nicht mit dem Steuerelement interagieren kann. Wenn dieses Attribut nicht angegeben ist, erbt das Steuerelement seine Einstellung vom umschließenden Element, zum Beispiel <fieldset>; wenn kein umschließendes Element mit gesetztem disabled-Attribut vorhanden ist, ist das Steuerelement aktiviert.
formDas <form>-Element, mit dem das <select>-Element verknüpft ist (sein Formular-Eigentümer). Der Wert dieses Attributs muss die id eines <form> im selben Dokument sein. (Wenn dieses Attribut nicht gesetzt ist, ist das <select> mit seinem Vorfahren <form>-Element verknüpft, falls vorhanden.)
Dieses Attribut ermöglicht es, <select>-Elemente mit <form>s an beliebiger Stelle im Dokument zu verknüpfen, nicht nur innerhalb eines <form>. Es kann auch ein Vorfahren-<form>-Element überschreiben.
multipleDieses Boolean-Attribut gibt an, dass mehrere Optionen in der Liste ausgewählt werden können. Wenn es nicht angegeben ist, kann nur eine Option ausgewählt werden. Wenn multiple angegeben ist, wird in den meisten Browsern eine scrollbare Listbox anstelle eines einzeiligen Dropdown-Menüs angezeigt. Mehrfach ausgewählte Optionen werden unter Verwendung der URLSearchParams-Array-Konvention übermittelt, d.h. name=value1&name=value2.
nameDieses Attribut wird verwendet, um den Namen des Steuerelements anzugeben.
requiredEin Boolean-Attribut, das angibt, dass eine Option mit einem nicht-leeren Zeichenfolgenwert ausgewählt werden muss.
sizeWenn das Steuerelement als Scroll-Liste präsentiert wird (z.B. wenn multiple angegeben ist), repräsentiert dieses Attribut die Anzahl der Zeilen in der Liste, die gleichzeitig sichtbar sein sollen. Browser müssen ein Select-Element nicht als Scroll-Liste präsentieren. Der Standardwert ist 0.
Hinweis: Laut HTML-Spezifikation sollte der Standardwert für die Größe 1 sein; in der Praxis wurde jedoch festgestellt, dass dies einige Websites bricht, und kein anderer Browser macht das derzeit so, deshalb hat sich Mozilla dafür entschieden, vorerst 0 in Firefox zurückzugeben.
Auf einem Desktop-Computer gibt es verschiedene Möglichkeiten, um mehrere Optionen in einem <select>-Element mit einem multiple-Attribut auszuwählen:
Mausbenutzer können die Tasten Strg, Befehl oder Umschalt drücken (abhängig von Ihrem Betriebssystem) und dann auf mehrere Optionen klicken, um sie auszuwählen/abzuwählen.
Warnung: Der Mechanismus, um mehrere nicht-kontinuierliche Elemente über die Tastatur auszuwählen, scheint derzeit nur in Firefox zu funktionieren.
Auf macOS stehen die Tastenkombinationen Strg + Nach-oben und Strg + Nach-unten im Konflikt mit den voreingestellten Betriebssystem-Kurzbefehlen für Mission Control und Anwendungsfenster, die deaktiviert werden müssen, bevor es funktioniert.
Tastaturnutzer können mehrere zusammenhängende Elemente auswählen, indem sie:
Tastaturnutzer können mehrere nicht-zusammenhängende Elemente auswählen, indem sie:
Das <select>-Element war historisch schwer effektiv mit CSS zu stilisieren. Die folgenden Leitfäden enthalten Informationen über Funktionen, die vollständig anpassbare Select-Elemente ermöglichen:
In Browsern, die die modernen Anpassungsfunktionen nicht unterstützen (oder in Altsystemen, wo sie nicht eingesetzt werden können), sind Sie darauf beschränkt, das Box-Modell zu manipulieren, die angezeigte Schriftart usw. Sie können auch die appearance-Eigenschaft verwenden, um das standardmäßige Systemaussehen zu entfernen.
Es ist jedoch schwer, ein konsistentes Ergebnis über verschiedene Browser hinweg mit traditionell <select>-Elementen zu erzielen. Wenn Sie die volle Kontrolle haben möchten, sollten Sie erwägen, eine Bibliothek mit guten Möglichkeiten zur Stilierung von Form-Widgets zu verwenden, oder versuchen, Ihr eigenes Dropdown-Menü mit nicht-semantischen Elementen, JavaScript und WAI-ARIA zu erstellen, um Semantik bereitzustellen.
Sie können die :open-Pseudoklasse verwenden, um <select>-Elemente im geöffneten Zustand zu stilisieren, also wenn die Dropdown-Optionsliste angezeigt wird. Dies gilt nicht für mehrzeilige <select>-Elemente (diejenigen mit dem multiple-Attribut), da sie in der Regel als Scroll-Liste angezeigt werden und daher keinen offenen Zustand haben.
Für weitere Informationen zur Legacy-<select>-Stilierung siehe:
Das <hr> innerhalb eines <select>-Elements sollte als rein dekorativ betrachtet werden, da es derzeit nicht innerhalb der Barrierefreiheitsstruktur angezeigt wird und daher nicht an unterstützende Technologien weitergegeben wird.
Das folgende Beispiel erstellt ein Dropdown-Menü mit drei Werten. Die zweite Option enthält das selected-Attribut, wodurch diese Option standardmäßig ausgewählt wird.
Das folgende Beispiel erstellt ein Dropdown-Menü mit Gruppierungen unter Verwendung von <optgroup> und <hr>, um es dem Benutzer zu erleichtern, den Inhalt im Dropdown-Menü zu verstehen.
Das folgende Beispiel ist komplexer und zeigt weitere Funktionen, die Sie in einem <select>-Element verwenden können:
| Fließinhalte, Phrasing-Inhalte, Interaktive Inhalte, gelistet, beschriftbar, zurücksetzbar, und übermittelbar form-associated-Element |
|
| Keine, sowohl der Anfangs- als auch der Endtag sind obligatorisch. |
| Jedes Element, das Phrasing-Inhalte akzeptiert. |
| combobox ohne multiple-Attribut und ohne size-Attribut größer als 1, andernfalls listbox. |
| menu ohne multiple-Attribut und ohne size-Attribut größer als 1, andernfalls combobox ist erlaubt, aber nicht empfohlen. |
| [`HTMLSelectElement`](/de/docs/Web/API/HTMLSelectElement) |
| HTML # the-select-element |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.