2014-04-18 46 views
0

我有一個下拉框和一個文本框(年)。當用戶在文本框中輸入內容時,以(文本框)作爲開頭的下拉框中的項目將處於頂部。例如,如果用戶在(在文本框)上寫入1999,則所有以1999開頭的列表項(按字母順序排列)應該是在上面。 這可能與jQuery的?如何重新排列下拉列表(jQuery)

謝謝

回答

1

附加的處理程序爲,抓住其值的文本框更改事件,找到所有與該啓動選項,刪除並預先考慮到選擇列表這樣的開頭:

$('#myTextBox').on('change', function(){ 

    var $select = ; 
    var textBoxValue = $(this).val(); 

    $('#mySelect option').filter(function(){ 
     return this.innerHTML.indexOf(textBoxValue) == 0; 
    }) 
     .remove() 
     .prependTo($('#mySelect')); 
} 
+0

謝謝。如何過濾text.i.e <選項值=「d123」> 300 - 3<選項值=「d321」> 300 -1。我想過濾300?我試過[text^=''+ textBoxValue +'「]'沒有運氣 – XristosK

+0

@ user1750037:我已經更新了我的解決方案,以顯示如何使用jquery的'filter'功能做到這一點 – Faust

+0

不錯!我用$('#select1選項:包含(「'+ textBoxValue +'」)') 這可能會幫助其他人 – XristosK

0

是的,這是可能的..創造了Plnker供大家參考..