你知道,我刚刚学习了select2.I需要获得所选选项的值,我知道我应该这样做:
$('select').val();
所以我只写一个像这样的简单问题:
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>
我还添加了Jquery和select2库。
当我写JS时,我发现了这个:
$(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);
})
})
我想知道为什么var a = $('#first')。val();放另一个位置会产生另一种影响吗?
答案 0 :(得分:0)
由于$("#first").val();
会返回当前选定的值,而非将来。因此,当您致电$("#first").select2();
并尝试检索该值时,您将获得当前所选值。
但是当您在点击事件中调用$("#first").val();
时,每次点击#clickIt
,都会调用$("#first").val();
并返回新选择的值。
我希望这对你有用。