2017-07-18 46 views
0

我正在使用jquery-ui自動完成與Bootstrap自定義樣式。JQuery自動完成不與minLength 0和自定義樣式工作

我也跟着例如here中給出確切的代碼:

然而,這似乎不被工作minLength: 0,也就是說當我們點擊輸入框,甚至當我們在一個或兩個字符鍵入自動完成的犯規出現。但是,如果在鍵入並從輸入框中刪除所有內容後退格,則會出現自動填充選項。它也沒有搜索任何選項。

演示:JSFiddle

回答

0

你只是缺少你source陣列label屬性。這是jQuery自動完成比較用戶輸入的屬性。下面是更新小提琴:https://jsfiddle.net/wa91nxmb/2/

而且,這裏是改變的代碼部分:

var coupons = [ 
    { 
     coupon: 'abced', 
     label: 'abced', 
     desc: '50 OFF' 
    }, 
    { 
     coupon: 'GG_hijk', 
     label: 'GG_hijk', 
     desc: '75 OFF' 
    }, 
]; 

既然你想,當用戶集中在空的文本框來顯示所有的選項,你可以綁定在focus事件通過javascript觸發搜索。

$("#coupon").focus(function(){ 
     $(this).autocomplete("search", $(this).val()); 
}); 
+1

之前我錯過了,當文本框爲空時,您還需要查看所有選項。順便說一句,你需要jQuery的標籤屬性來比較用戶值。沒有這一點,當你在文本框中鍵入'ab'時,結果中不會有匹配選項。 – Nisarg