Moin!
Was kann denn eine Combobox jetzt wirklich genau?
Eine Combobox erlaubt die Auswahl eines Wertes aus einer Liste, zudem können diese als Schlüssel der Liste genutzt werden oder andere Schlüssel können hinterlegt werden.
Ausserdem kann alternativ ein Wert eingetragen werden, der wiederum als Schlüssel dienen kann. Wiederum kann man einen anderen Schlüssel hinterlegen.
Das Schlüssel-Wertpaar wird typischerweise clientseitig (JS) oder serverseitig (<FORM>) weitergegeben.
Ich fragte nicht, was in HTML eine Combobox sein könnte, sondern was allgemein eine Combobox ist. Mit allen Funktionalitäten.
Die Antwort wird vermutlich aufdecken, dass eine Combobox so einfach gar nicht zu definieren ist, sondern dass es immer mal wieder programmierte Abweichungen von einem angenommenen "Standard" gibt. Und viele Verhaltensweisen einer Combobox erfordern ein Gedächtnis.
Browser haben kein Gedächtnis! Also können auch Comboboxen kein Gedächtnis haben, weil sie im simpelsten Fall nur HTML anzeigen - keine Cookies, kein Javascript!
Natürlich hätte man seinerzeit bei Erfindung von HTML bei Browsern ein solches Gedächtnis einfach fordern können. Oder man hätte natürlich auch einfach eine Combobox ohne Gedächtnis einbauen können.
Aber welchen Wert hätte so eine Combobox denn gehabt? Wie ich schon erwähnte: Es gibt schlichte Texteingabefelder für den freien Text. Und es gibt Auswahllisten. Würde es irgendeinen Mehrwert bringen, wenn man in einem <select> außer der Vorauswahl noch simpel einen freien Text eingeben könnte? Das hätte Auswirkungen auf die Verarbeitung der Formulardaten.
Warum nicht in der Auswahlliste "sonstige" auswählen und daneben dann ein Textfeld ausfüllen lassen? Fertig ist die "Combobox" in HTML.
Richtig, darum vermisse zumindest ich auch die "gute alte" Combobox.
Kannst du ja ruhig vermissen, geben wird es sie deshalb in HTML trotzdem nicht.
Warum gibt es die Combo nicht? Klar, es wäre ein zusätzliches und substituierbares Element, aber es wäre offensichtlich ökonomisch dieses zur Verfügung zu haben.
Nein, ich sehe keine Ökonomie darin. Es gibt in HTML ja auch nur ein Element für Links - keine Extrawürste für Mail-Links, Download-Links, Externe-Seiten-Links etc.
Beschreibe, welches Eingabeszenario du mit einem Doppel von Text- und Auswahlfeld nicht abdecken kannst (ohne Javascript!).
- Sven Rautenberg
"Love your nation - respect the others."