2017-07-22 211 views
0

我正在使用select2作爲在API調用中填充的選擇框。我想打電話給另一個API,當我從下拉列表,它現在是這樣的一個項目:每當我挑一些其他的價值選擇2 onChange()觸發器被選擇

<select id="person-select" onchange="callAnotherApi()" style="width: 100%"> 
</select> 

API被調用,而不是當我拿起第一個(這已經是默認選中,因此不會觸發onChange())。 onClick()在此處不起作用。我想知道是否可以禁用選擇的第一條記錄或使其工作?

+0

告訴我完整的代碼 –

+0

哪一部分? 'select2'被加載,函數觸發另一個API,這只是第一個默認選擇值的問題 – Norgul

+0

這就是我發現的:「這種行爲並不是因爲Select2強制它,而是因爲瀏覽器自動選擇第一個我們無法控制它,我們只能解決它,最好的選擇是在Select2中使用佔位符支持,並且包含一個空白選項標籤作爲默認選擇。「 –

回答

3

您可以禁用第一個選項,把佔位符文本:

<select> 
    <option val="null" disabled selected> select an answer</option> 
    <option val="one">one</option> 
</select> 

檢查此琴:http://jsfiddle.net/sL4fLnhn/

$('select').on('change', function(){ 
     $('select option:disabled').remove(); 
    }); 
    $('select').select2(); 
+0

圓滑而簡單。謝謝 – Norgul