限制JQuery自动完成标记上的元素数量

时间:2013-05-05 19:04:15

标签: javascript jquery node.js

我有以下代码: http://jsfiddle.net/kheAn/

在JQuery Autocomplete中,您可以使用slice来限制,但我不知道如何使用此插件。

我想限制自动填充功能下拉列表中显示的元素数量。

现在,所有元素都在显示。我想只显示最接近用户输入的前10名。

如何限制显示的元素?

此外,还有比我目前的代码更好的解决方案吗?我听说我应该使用Node.js和/或bootstrap。

1 个答案:

答案 0 :(得分:2)

关于NodeJS,它是一种JavaScript服务器端语言,很容易上手,但我不认为对自动完成功能有特殊兴趣吗?!

我并不确切知道tagit是如何工作的,但如果您想使用bootstrap来管理它,您可以轻松使用“typeahead”插件并将items选项设置为您想要的最大项目数。

http://twitter.github.io/bootstrap/javascript.html#typeahead

$('#demo2').typeahead({
    source: availableTags,
    items: 10
});

编辑:根据tagit.js文档,jQuery自动完成一个。

https://github.com/aehlke/tag-it#autocomplete-object

  

允许覆盖源并选择由其设置的选项   默认,以及添加您要传递给的任何其他选项   jQuery UI自动完成小部件,例如minLength或延迟。

     

如果要使用自定义,则应覆盖autocomplete.source   自动完成源,如Ajax / XHR响应。

http://api.jqueryui.com/autocomplete/

您无法轻松添加选项来限制显示的最大项目数,但是您可以使用可以限制内部响应项的功能覆盖源!

我一直认为bootstrap更适合您的需求,并且它不需要jQuery-UI。

编辑:

经过讨论,这个插件应该是您正在寻找的插件!

http://welldonethings.com/tags/manager

$('#demo2').tagsManager({
    typeahead: true,
    typeaheadSource: availableTags
});