Rufen Sie die ausgewählte Options-ID mit jQuery ab


80

Ich versuche, mit jQuery eine Ajax-Anfrage basierend auf einer ausgewählten Option zu stellen.

Gibt es eine einfache Möglichkeit, die ausgewählte Options-ID (z. B. "id2") mit jQuery abzurufen?

<select id="my_select">
   <option value="o1" id="id1">Option1</option>
   <option value="o2" id="id2">Option2</option>
</select>


$("#my_select").change(function() {
    //do something with the id of the selected option
});

Antworten:


214

Sie können es mit dem :selectedSelektor wie folgt erhalten:

$("#my_select").change(function() {
  var id = $(this).children(":selected").attr("id");
});

Wie gehe ich vor, um Ihre Lösung in reinem Javascript anzuwenden?
Leslie Nyahwa

23

var id = $(this).find('option:selected').attr('id');

dann machst du was du willst mit selectedIndex

Ich habe meine Antwort überarbeitet ... da selectedIndex keine gute Variable ist, um ein Beispiel zu geben ...


2 Kommentare hier, er hat bereits das DOM-Element mit thisin einem Event-Handler, keine Notwendigkeit, erneut selectedIndex
nachzuschlagen

ja ... sorry ... ich hatte es eilig ... und die Variable selectedIndex war in der Hand ... natürlich muss er nicht noch einmal bestehen ... ich werde wiederholen
Mihai Iorga

Persönlich wähle ich diese Option, da keine .change-Funktion erforderlich war
bsguy


5

Der einfachste Weg dazu ist var id = $ (this) .val (); aus einem Ereignis wie bei Veränderung.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.