我有一个自动填充框,其中包含一个'大' (大约500)数组作为内联源。单击输入框时,我会进行搜索("")以使整个列表可见。由于500件物品,这需要大约2秒的时间。
JQuery的自动完成功能会在每次点击/搜索时创建并销毁这些项目,如果重新使用这些项目会更快。
有没有办法(使用jquery的内置自动完成功能)?
答案 0 :(得分:1)
在查看autocomplete小部件的源代码后,我得出结论,这是不可能的。
函数_suggest
作为第一行var ul = this.menu.element.empty()
,需要在源代码中进行大修才能实现这一目标:
您需要创建一个新功能,在页面加载时生成所有项目。 (这可能会增加您网站的加载时间。)
您需要调整_render
函数,以便他们也会使用show / hide类过滤项目,而不是渲染它们。
我认为你最好的选择是将自动完成生成为纯HTML(没有JS)并编写自己的隐藏/显示功能。你当然也可以找一个解决这个问题的插件。