2010-11-24 39 views
5

自動完成不會在第一個輸入的字符上觸發,而是第2個。儘管在使用後空間後,它適用於minLength = 1。 另外,selectFirst:true絕不會在頁面加載時默認爲數組中的第一項。jQuery autocomplete minLength

$().ready(function(){ 
     $('#CompanyName').autocomplete({ 
       source: companyNames, 
       select: SetLocations, 
       selectFirst :true, 
       minLength: 0 //corrected as suggested, but still no change 
     }); 
}); 

以前有沒有人遇到過這種行爲。我很笨,因爲我沒有任何全局設置/默認值。

回答

11

你有幾個語法錯誤,document.ready處理程序缺少括號(反正是不推薦使用),並在您選擇一個逗號,它應該是這樣的:

$(function() { 
    $('#CompanyName').autocomplete({ 
      source: companyNames, 
      select: SetLocations, 
      selectFirst: true, //here 
      minLength: 0 
    }); 
}); 

此外,自動完成後激活minLength字符,如果立即想的那樣,使用0from the docs

的minLength :用戶在自動完成激活之前必須輸入的最少字符數。只有幾個項目,零對本地數據很有用。當有很多物品時,應該增加一個字符可以匹配幾千個物品。

.....

+0

@Nick:哦,這就是我的錯字。抱歉。但是用我的代碼進行交叉檢查。所有逗號都已到位。 – 2010-11-24 10:06:54