我正在使用jQuery的自动完成功能,但是发现了一个与性能相关的问题 – 如果我输入’abc’,它会被’a’,’ab’和’abc’扫描,一次,我怎么能当ajax调用正在通过’abc’进行搜索时,停止前一个’a’,’ab’?
类似的情况是:
我使用jQuery DataTables,想要进行一些搜索,例如,我输入要搜索的内容(调用搜索网络方法),然后单击按钮 – 一次“搜索”3次,或者在我点击“搜索”时更改搜索文本,并提出一个新的搜索,我怎么能阻止以前无用的ajax调用?
解决方法
假设您使用的是
jQuery UI Autocomplete:
>您可以在开始搜索之前指定字符串的最小长度. (默认是3我猜)
>您还可以指定上次击键和ajax调用之间的延迟.通常应该2-300ms.
> AjaxQueue可能会帮助您清理一些东西.不知道怎么(我从来不需要它),但值得一试:)