2013-04-21 71 views
0

使用角度,select2小部件。 我聲明在HTML中是這樣的:select2小部件無法以編程方式更新所選值

<div> 
    <select id = "dropdown" 
     ... 
     <option value = "1" id="1">1</option> 
     <option value = "2" id="2" >2</option> 
     <option value = "3" id="3"" >3</option> 
    /select> 
</div 

,並希望通過編程改變所選的項目(從另一個函數調用)。

當調用的代碼:

$("#dropdown").select2().select2('val', "3") 

我可以看到,在下拉的值發生變化,但實際上訪問該下降的模型屬性時向下(獲取所選擇的項目),它沒有被設置到我試圖設置它。

當檢查下拉列表的onChange事件時,我可以看到e.val是未定義的。

請參閱下小提琴爲例(點擊鏈接後,我並沒有想獲得的警告框「未定義」):http://jsfiddle.net/kcArV/1/

任何想法我做錯了嗎?

回答

2

應該

$('#attribute').select2().on('change', function(e) { 
    alert($(this).val());  
}); 

e是事件對象,而不是選擇控制,方法方面this點選擇元素,這樣你就可以調用.val()獲取所選值

演示:Fiddle

相關問題