2010-11-16 34 views
7

我想有某种自定义自动完成,我认为定制jQuery自动完成更有意义。所以我想知道:JQuery自动完成:覆盖默认行为

  1. 如何强制打开自动完成列表? $("#autocomplete").trigger('autocompleteopen');不起作用。

  2. 如何把你自己的东西放到列表中?显然不是通过source选项,而是来自外部。

在其它方面,从图1和2,我希望有所有选项(未由limit限制)的列表,我希望它打开并示出用户开始键入之前所有的选项和无论用户在输入什么内容。

任何帮助,将不胜感激。

干杯
帕尔萨

回答

10

对方回答没有帮助我很多(在问候你的问题1),有点四处后,但我发现,强制自动完成列表来打开的最简单方法。您只需调用“搜索”方法即可。

你需要做的第一件事是initilase您自动完成为0的MINLENGTH个,像这样:

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

然后就可以调用搜索方法来打开列表:

$('#autocomplete').autocomplete('search'); 

希望这有助于其他人寻找这个问题的答案。

+0

谢谢!我把它放在焦点上。我认为minLength:0会使这种情况发生,但事实并非如此。 $(“#autocomplete”)。focus(function(){$(“#autocomplete”)。autocomplete('search');}); – 2012-08-16 18:58:11