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.