Hallo Freunde, das ist mein Code:
<select id='first'>
<option value='1'> First </option>
<option value='2'> Second </option>
<option value='3'> Three </option>
</select>
Dies ist mein select2-Code:
$("#first").select2();
Nachfolgend finden Sie den Code zum Abrufen des ausgewählten Werts.
$("#first").select2('val'); // It returns first,second,three.
Dies ist ein Text wie first,second,three
und ich möchte 1,2,3
bekommen.
Bedeutet, ich brauche den Wert der Auswahlbox, nicht den Text.
$("#first").val(); // this will give you value of selected element. i.e. 1,2,3.
Um ein Select-Element zu erhalten, können Sie $('#first').val();
verwenden.
So rufen Sie den Text des ausgewählten Werts ab - $('#first :selected').text();
Können Sie bitte Ihren Funktionscode select2()
posten?
$("#first").select2('data')
liefert alle Daten als Karte zurück
Diese Lösung ermöglicht es Ihnen, das Auswahlelement zu vergessen. Hilfreich, wenn Sie keine ID für ausgewählte Elemente haben.
$("#first").select2()
.on("select2:select", function (e) {
var selected_element = $(e.currentTarget);
var select_val = selected_element.val();
});
Wenn Sie ajax verwenden, möchten Sie vielleicht aktualisierten Wert direkt nach der Auswahl auswählen.
//Part 1
$(".element").select2(/*Your code*/)
//Part 2 - continued
$(".element").on("select2:select", function (e) {
var select_val = $(e.currentTarget).val();
console.log(select_val)
});
Credits: Steven-Johnston
Versuche dies :
$('#input_id :selected').val(); //for getting value from selected option
$('#input_id :selected').text(); //for getting text from selected option
Siehe diese Geige .
Grundsätzlich möchten Sie die value
s Ihrer option
- Tags abrufen, versuchen jedoch immer, den Wert Ihres select
- Knotens mit $("#first").val()
abzurufen.
Also müssen wir die Option-Tags auswählen und wir werden jQuerys-Selektoren verwenden:
$("#first option").each(function() {
console.log($(this).val());
});
$("#first option")
wählt jede option
aus, die dem Element mit der ID first
untergeordnet ist.
Einfache Antwort ist:
$('#first').select2().val()
und du kannst auf diese Weise auch schreiben:
$('#first').val()
Andere Antworten funktionierten nicht für mich, also entwickelte ich eine Lösung:
Ich habe eine Option mit class = "option-item" zum einfachen Targeting erstellt
HTML:
<select id="select-test">
<option value="5-val" id="first-id" class="option-item"> First option </option>
</select>
Dann fügte ich für jede ausgewählte Option die Eigenschaft display none hinzu
CSS:
option:checked {
display: none;
}
Jetzt können wir change zu unserer SelectBox hinzufügen, um unsere ausgewählte Option mit der Eigenschaft display none durch einfaches : hidden -Attribut zu finden
JQuery:
$('#select-test').change(function(){
//value
$('#select-test').find('.option-item:hidden').val();
//id
$('#select-test').find('.option-item:hidden').attr('id');
//text
$('#select-test').find('.option-item:hidden').text();
});
Geige arbeiten: https://jsfiddle.net/Friiz/2dk4003j/10/
Lösung:
var my_veriable = $('#your_select2_id').select2().val();
var my_last_veriable = my_veriable.toString();