2017-04-16 3 views
1

Ich bin auf der Suche nach einer Möglichkeit, herauszufinden, welches Feld mit jQuery ausgewählt ist. Ich baue eine Funktion, aber es funktioniert nicht.Welches <option> Feld ist ausgewählt? Mit jQuery

HTML Beispiel

<select id="bewerbungID"> 
<option value="1" name="selectName">test1</option> 
<option value="2" name="selectName">test2</option> 
<option value="3" name="selectName">test3</option> 
</select> 

JS Funktion

$('#bewerbungID select').on('change', function() { 
    alert($('option[name=selectName]:checked', '#bewerbsungID').val()); 
}); 

in jsfiddle Getestete open link

+0

Mögliche Duplikat [jquery wählen Sie die Option Click-Handler] (http://stackoverflow.com/questions/5749597/jquery-select -Option-Klick-Handler) – Mohammad

Antwort

2

Treat wählen als Eingabefeld, wie beispielsweise Text. Dann muss ein Wert ausgewählt sein - zeige einen neuen Wert, wenn er sich ändert. Deine Logik war richtig, aber die jQuery-Selektoren wurden etwas verwirrend.

Ihren Code ein wenig vereinfacht:

$('#bewerbungID').on('change', function() { 
 
    alert($('#bewerbungID').val()); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="bewerbungID"> 
 
<option value="1" name="selectName">test1</option> 
 
<option value="2" name="selectName">test2</option> 
 
<option value="3" name="selectName">test3</option> 
 
</select>

0
$('#bewerbungID').on('change', function() { 
    alert($('#bewerbsungID option:selected').val()); 
}); 

Es sollte den Trick

1

Das Problem, das Sie haben, ist, dass Sie nicht die Wähler richtig verwenden.

grundlegende Erklärung:

Der Wähler ist alles, was Sie in der Klammer finden Sie hier: $('...'). Wenn Sie # vor dem Wort verwenden, bedeutet das, dass Sie ein Element mit der ID auswählen. In Ihrem Fall ist ... gleich #bewerbungID so sollte der richtige Code wie folgt aussehen:

$('#bewerbungID').on('change', function() { 
    alert($('#bewerbungID').val()); 
}); 
Verwandte Themen