Wie können Sie mit jQuery prüfen, ob in einem Auswahlmenü eine Option ausgewählt ist, und wenn nicht, eine der ausgewählten Optionen zuweisen.
(Die Auswahl wird mit einem Labyrinth von PHP-Funktionen in einer App generiert, die ich gerade geerbt habe. Dies ist also eine schnelle Lösung, während ich mich mit diesen beschäftige :)
javascript
jquery
forms
dom
html-select
meleyal
quelle
quelle
Antworten:
Ich bin mir zwar nicht sicher, was Sie genau erreichen möchten, aber dieser Code hat bei mir funktioniert.
quelle
$("#mySelect").val(3);
$("#mySelect option")[2]['selected'] = true;
herausgefunden, nachdem ich die Objektstrukturen in Firebug untersucht hatte.$("#mySelect").prop("selectedIndex", 2)
Dazu muss jQuery nicht verwendet werden:
quelle
Diese Frage ist alt und hat viele Ansichten, also werde ich einfach ein paar Sachen rauswerfen, die einigen Leuten helfen werden, da bin ich mir sicher.
So überprüfen Sie, ob ein ausgewähltes Element ausgewählte Elemente enthält:
oder um zu überprüfen, ob für eine Auswahl nichts ausgewählt ist:
oder wenn Sie sich in einer Schleife befinden und überprüfen möchten, ob das aktuelle Element ausgewählt ist:
So überprüfen Sie, ob in einer Schleife kein Element ausgewählt ist:
Dies sind einige der Möglichkeiten, dies zu tun. jQuery bietet viele verschiedene Möglichkeiten, um dasselbe zu erreichen. Daher wählen Sie normalerweise nur die aus, die am effizientesten erscheint.
quelle
Lencionis Antwort würde ich empfehlen. Sie können den Selektor für die Option ändern
('#mySelect option:last')
, um die Option mit einem bestimmten Wert mit "#mySelect option[value='yourDefaultValue']
" auszuwählen . Mehr zu Selektoren .Wenn Sie intensiv mit ausgewählten Listen auf dem Client arbeiten, lesen Sie dieses Plugin: http://www.texotela.co.uk/code/jquery/select/ . Schauen Sie sich die Quelle an, wenn Sie weitere Beispiele für die Arbeit mit Auswahllisten sehen möchten.
quelle
Hier ist meine Funktion, die die ausgewählte Option ändert. Es funktioniert für jQuery 1.3.2
quelle
quelle
Einfach! Der Standard sollte die erste Option sein. Getan! Das würde dich zu unauffälligem JavaScript führen, da JavaScript nicht benötigt wird :)
Unauffälliges JavaScript
quelle
Ich bin bereits auf das erwähnte Texotela-Plugin gestoßen , mit dem ich es folgendermaßen lösen konnte:
quelle
Sehen Sie sich den ausgewählten Index des
select
Elements an. Übrigens, das ist eine einfache alte DOM-Sache, nicht JQuery-spezifisch.quelle
Dies war ein schnelles Skript, das funktioniert hat. Das Ergebnis ist einem Label zugeordnet.
quelle
Ihr macht viel zu viel für die Auswahl. Einfach nach Wert auswählen:
quelle
quelle
Ich habe eine gute Möglichkeit gefunden, zu überprüfen, ob die Option ausgewählt ist, und einen Standard auszuwählen, wenn dies nicht der Fall ist.
Wenn #some_select has't Standard gewählte Option dann .val () ist nicht definiert
quelle
quelle
Dies ist eine weitere Möglichkeit, zu überprüfen, ob eine Option in jquery ausgewählt ist oder nicht. Dies gibt Boolean (True oder False) zurück.
[1] ist der Index der Auswahlfeldoption
quelle
Ändern Sie das Ereignis im Auswahlfeld in "Auslösen" und ziehen Sie anschließend einfach das ID-Attribut der ausgewählten Option: -
quelle
Ich habe nur nach etwas Ähnlichem gesucht und Folgendes gefunden:
Dadurch werden alle Auswahlmenüs in der Klasse gefunden, für die noch keine Option ausgewählt ist, und die Standardoption (in diesem Fall "2") ausgewählt.
Ich habe versucht,
:selected
statt zu verwenden[selected]
, aber das hat nicht funktioniert, weil immer etwas ausgewählt ist, auch wenn nichts das Attribut hatquelle
Wenn Sie jede Option explizit überprüfen müssen, um festzustellen, ob sie das Attribut "ausgewählt" haben, können Sie dies tun. Andernfalls erhalten
option:selected
Sie bei Verwendung den Wert für die erste Standardoption.quelle