JQuery自动完成 - 防止破坏项目?

时间:2014-06-25 11:06:21

标签: javascript jquery jquery-ui autocomplete

我有一个自动填充框,其中包含一个'大' (大约500)数组作为内联源。单击输入框时,我会进行搜索("")以使整个列表可见。由于500件物品,这需要大约2秒的时间。

JQuery的自动完成功能会在每次点击/搜索时创建并销毁这些项目,如果重新使用这些项目会更快。

有没有办法(使用jquery的内置自动完成功能)?

1 个答案:

答案 0 :(得分:1)

在查看autocomplete小部件的源代码后,我得出结论,这是不可能的。

函数_suggest作为第一行var ul = this.menu.element.empty(),需要在源代码中进行大修才能实现这一目标:

  1. 您需要创建一个新功能,在页面加载时生成所有项目。 (这可能会增加您网站的加载时间。)

  2. 您需要调整_render函数,以便他们也会使用show / hide类过滤项目,而不是渲染它们。

  3. 我认为你最好的选择是将自动完成生成为纯HTML(没有JS)并编写自己的隐藏/显示功能。你当然也可以找一个解决这个问题的插件。