queue rich:在将它们发送到服务器之前自动完成更改事件

时间:2012-02-02 14:18:24

标签: ajax jsf richfaces

我正在使用richfaces中的自动完成组件。 (模式 是ajax) 我有以下要求:在用户输入内容之后,请求不应该直接进入服务器,而应该在调用自动​​完成方法之前等待一段时间,比如500毫秒。这是为了防止ajax泛滥(例如,如果用户键入快速3个字符,它将只向服务器发出一个请求而不是3个)。
基本上我希望自动完成方法只有在最后一次按键经过500毫秒后才会被调用。 当然这可以通过使用a4j:队列来解决,问题是建议列表总是出现,并且无论我使用什么来阻止它,都会调用自动完成方法(附加a4j:队列或设置频率,eventsQueue& requestDelay属性)。
任何想法将不胜感激。

1 个答案:

答案 0 :(得分:0)

您提到的频率标签就是这样做的。它定义为:激活建议弹出窗口之前的延迟(以秒为单位)。默认值为400毫秒。

如果您将频率设置为500ms仍然太短:用户可以在该时间段内键入超过1个字符,这可能会导致您的ajax泛滥。

我建议您将频率设置为 1000 或更好 2000