2016-07-17 6 views
1

Wissen Sie, ich über select2.I nur zu lernen muß, um den Wert der ausgewählten Option zu bekommen, ich weiß ich so tun soll:

$('select').val(); 

Also nur ein einfaches Problem schreibe ich dies wie:

HTML:

<button id="clickIt">click</button> 

<p>SELECT NUMBER</p> 
<select id='first'> 
<option value='1'>First</option> 
<option value='2'>Second</option> 
<option value='3'>three</option> 
</select> 
<p id="set1"></p> 

ich habe auch JQuery und select2 Bibliothek hinzufügen. .

wenn ich JS schreiben, fand ich diese:

$(document).ready(function(){ 

$("#first").select2(); 
//var a=$("#first").val(); // it always alert 1,so a always equals 1. 
$('#clickIt').on("click",function(){ 

var a=$('#first').val(); // that is the resule what I want . 
alert(a); 

}) 

}) 

Ich möchte wissen, warum var a = $ ('# zuerst') val(); eine andere Position setzen wird einen anderen Effekt haben?

Antwort

0

Da $("#first").val(); gibt den momentan gewählten Wert nicht die Zukunft ein. Also, wenn Sie $("#first").select2(); aufrufen und versuchen, den Wert abzurufen, erhalten Sie den aktuell ausgewählten Wert.

Wenn Sie jedoch innerhalb des Klickereignisses $("#first").val(); aufrufen, wird jedes Mal, wenn Sie auf #clickIt klicken, $("#first").val(); aufgerufen und der neu ausgewählte Wert zurückgegeben.

Ich hoffe, dass dies für Sie sinnvoll ist.

+0

danke, das hat mir sehr geholfen! –

Verwandte Themen