【发布时间】:2012-07-31 21:08:02
【问题描述】:
我有一个 jQuery UI 自动完成表单,它可以从远程源获取数据,但是当连接速度很慢时,它会变得不稳定(排队请求,并弄乱结果)。我们如何在用户暂停之前阻止请求触发。
【问题讨论】:
-
在这种情况下“用户暂停”是什么意思?你能以某种方式定义它吗?
标签: javascript jquery jquery-ui autocomplete jquery-ui-autocomplete
我有一个 jQuery UI 自动完成表单,它可以从远程源获取数据,但是当连接速度很慢时,它会变得不稳定(排队请求,并弄乱结果)。我们如何在用户暂停之前阻止请求触发。
【问题讨论】:
标签: javascript jquery jquery-ui autocomplete jquery-ui-autocomplete
我认为delay 选项应该适合你:
自动完成在击键后等待激活自身的延迟(以毫秒为单位)。零延迟对本地数据有意义(响应速度更快),但会为远程数据产生大量负载,同时响应速度较慢。
默认情况下,它是 300 (ms),但您应该增加它以满足您的需要。
$("#my-input").autocomplete({
/* options */,
delay: 750
});
例如比较以下两个例子:
【讨论】: