簡體   English   中英

大數組上的jQuery自動完成

[英]Jquery autocomplete on large array

我正在使用大小約為5000的本地數組的Jquery自動完成功能,每個單詞約為10個字符。 我正在像這樣初始化對象:

.autocomplete({matchContains: true, minLength: 3, delay: 700, source: array1, max: 10, highlight: true })

問題是,當我開始鍵入文字時,要花很多時間(有時會使瀏覽器崩潰)才能顯示結果。

我能做什么?

謝謝

您可以使用AJAX來獲取數組,而不是將其放入HTML中,在查詢服務器之前增加延遲和所需的minLength以減少匹配。

我會像達林·迪米特洛夫(Darin Dimitrov)所說的那樣,但我也會在服務器端的快速linq語句中執行.Take(10)(或一些對您而言聽起來不錯的數字)。 這將減少結果集,並且在用戶繼續鍵入時仍將變得更加准確。

您是否在使用標准的jQuery自動完成插件 如果是這樣,我不熟悉您使用的選項參數“源”。

該插件的正確語法為: autocomplete( url or data, [options] ) 聽起來您的版本可以使用'source'選項參數,(盡管會使瀏覽器崩潰),所以我很困惑。 如果瀏覽器崩潰了,我希望該問題與javascript有關。

我建議嘗試:

$('whatever').autocomplete(array1,{
    matchContains: true, 
    minLength: 3, 
    delay: 700,  
    max: 10, 
    highlight: true 
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM