JQuery自动完成:覆盖默认行为

7
我希望有一种自定义自动完成的方式,我认为更好的方法是定制jQuery的自动完成。所以我想知道:
1. 如何强制打开自动完成列表?`$("#autocomplete").trigger('autocompleteopen');`无效。
2. 如何将自己的内容放到列表中?显然不能通过`source`选项,而是从外部添加。
换句话说,通过问题1和2,我想要一个包含所有选项(不受limit限制)的列表,并且在用户开始输入之前,无论用户正在输入什么,都要打开并显示所有选项。
任何帮助将不胜感激。
谢谢
Parsa
1个回答

10

对于你的第一个问题,其他答案并没有帮助我太多。但是在经过一番搜索之后,我找到了最简单的强制自动完成列表打开的方法。你只需要调用“search”方法即可。

首先,你需要以0为minlength初始化你的自动完成,像这样:

$('#autocomplete').autocomplete({
  minLength: 0,
  ...
});

然后,您可以调用search方法来打开列表:

$('#autocomplete').autocomplete('search');
希望这可以帮助其他正在寻找解决方法的人。

谢谢!我把它放在焦点上了。我以为minLength: 0会让这个发生,但实际上并没有。$("#autocomplete").focus(function(){ $("#autocomplete").autocomplete('search'); }); - Cameron Taggart

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接