2016-08-22 5 views
1

Mit mehr als einer Auswahlbox im Formular, Wie kann ich den Wert der ausgewählten ohne die Verwendung von IDs erhalten?Erhalte den Wert der ausgewählten "Auswahlbox" mit Jquery

Der folgende Code gibt immer den Wert der ersten ausgewählten Box zurück.

$('form[name=test]').on('change', function() { 
    alert("Value: " + $('select').val()); 
}); 
+1

versuchen alert ("Wert:" + $ (this) .val()); – Developer

Antwort

2

Try this: Sie können Änderungsereignishandler für alle Auswahlbox mit select jquery Tag-Selektor und verwenden this (das ist nichts anderes als die Auswahlbox Instanz, auf dem Änderungsereignis auftritt) binden die lesen geänderter Wert

$('select').on('change', function() { 
    alert("Value: " + $(this).val()); 
}); 
+0

glücklich, Ihnen zu helfen :), danke @ HillelGarcia –

+0

@BhushanKawadkar ehrlich gesagt bekomme ich nicht, warum die gleiche identische Antwort wie meine replizieren, aber was auch immer – pumpkinzzz

+0

@pumpkinzzz, es ist nur zufällig. Es ist nicht so kompliziert und mehr als eine Person kann an die gleiche Lösung denken. Auch Sie können sehen, dass es nur eine Minute Unterschied zwischen unserem Beitrag gibt. Ich habe meiner Antwort eine logische Erklärung gegeben und es scheint, dass Sie später eine Erklärung hinzugefügt haben. Nimm es nicht persönlich, aber das passiert auf SO, ich habe das auch früher gesehen, aber du kannst nicht sagen, dass jemand deine Antwort kopiert hat. –

0

Sie verwenden:

$("form[name=test] option:selected").val(); 
0
  1. auf die Änderung Ereignis registrieren alle wählen (nicht die Form)
  2. Verwendung dieses Schlüsselwort, um die eine, die ausgelöst das Ereignis

versuchen dieses

$('select').on('change', function() { 
    alert("Value: " + $(this).val()); 
}); 
+0

danke für die prompte antwort. –

+0

@ HillelGarcia np Kumpel :) Fühlen Sie sich frei, als richtige Antwort zu markieren – pumpkinzzz

1

event Das Argument wird an die Callback-Funktion übergeben und das currentTarget Attribut für das Ereignis ist das Element, das das Ereignis bei arbeitet;

$('select').on('change', (e) => { 
    console.log($(e.currentTarget).val()); 
}); 
Verwandte Themen