我一直在一个当前使用 Prototype+Scriptaculous 的Ajax.Autocomplete的网站上工作。目前它工作得很好,但我需要将它转换为 jQuery。
我知道jQueryUI有一个Autocomplete,但我看不出是否有一种方法可以使用现有的外部 URL 而无需更改它。
使用 Scriptaculous 的 Ajax.Autocomplete 非常简单:
new Ajax.Autocompleter('inputID', 'destinationID', 'search.php', {
paramName: 'q',
minChars: 2,
frequency: 0.4,
indicator: 'loading'
});
这几乎是不言自明的:inputID是 的 ID <input>
,destinationID是您希望在其中显示结果的元素。search.php是从您的数据库返回结果的页面——包括您希望在列表中显示的 HTML .
其余的选项应该很明显:)
search.php?q=search-query
当前返回格式良好的 HTML,如下所示:
<ul>
<li id="ID">Result</li>
<li id="ID">Result</li>
<li id="ID">Result</li>
</ul>
如果我可以将它与 jQueryUI 自动完成一起使用,那就太好了,但我不知道它是否可能(如果可以,该怎么做)。
我浏览了一堆关于使用 jQueryUI 的自动完成的教程,但它们似乎都专注于使用 Javascript 数组(对我来说没用,因为我在数据库中有数千条记录要搜索)或 JSON(其中我希望尽可能避免)。
可以做到吗?