如何在页面加载时让jQuery的自动完成插件显示其下拉列表?

时间:2009-12-01 02:18:59

标签: jquery jquery-plugins autocomplete

http://community.sciencecareers.org/mt-static/plugins/CommunityPlus/js/autocomplete/ http://community.sciencecareers.org/mt-static/plugins/CommunityPlus/js/autocomplete/demo/

尝试以编程方式触发自动完成列表结果的显示。这样,而不是等待用户输入。

这可行吗? (我已尝试获取元素的焦点,调用Javascript向下箭头键事件。没有骰子)

4 个答案:

答案 0 :(得分:8)

当且仅当您使用的是jQuery 1.3或更高版本时,您可以创建一个jQuery.Event对象,然后trigger()。如果元素也是集中的,我只能让它工作。因此,此代码适用于the demo page上的“电子邮件(本地):”示例。

var e = jQuery.Event("keydown");
e.which = 40;
$('#suggest13').trigger('focus').attr('value',' ').trigger(e);

我不确定你的情况究竟是什么,我认为它在某种程度上依赖于自动完成实际显示的东西,如果只有一个空格被按下。情况并非总是如此。

答案 1 :(得分:5)

$("#mainCombo_input").trigger('keydown.autocomplete');  will open the autocomplete div   and also to display the dropdown.

你也可以使用

$("#mainCombo_input").val("Item1");    
$("#mainCombo_input").trigger('keydown.autocomplete'); to open div with on

答案 2 :(得分:5)

这是怎么回事? $("#autocompleteid").autocomplete("search")

答案 3 :(得分:0)

documentation,您可以触发搜索(在其他答案中也会提到)。由于您的案例是在页面加载上并且输入字段上可能没有任何数据,因此您需要在运行空搜索之前更改minLength:

$yourInputField.autocomplete('option', 'minLength', 0);
$yourInputField.autocomplete('search', "");