jQueryUI自动完成:触发文本框焦点

Don*_*mas 2 jquery jquery-ui jquery-ui-autocomplete

我正在尝试在文本框焦点上打开一个jQuery自动完成实例,并从远程源获取数据.这里显示了我的尝试的近似值:

http://jsfiddle.net/Ug2aG/1/

这样做的问题是,当您从下拉列表中选择一个值时,您会注意到对文本框焦点方法的额外调用.我无法找到防止这种额外呼叫的方法,因为它干扰了功能.

有没有更好的方法去做我想要实现的目标?

And*_*ker 6

这是一个不太讨厌的解决方案:

$('#tags').focus(function() {
    /* Only search if the autocomplete menu is hidden: */
    if ($("ul.ui-autocomplete").is(":hidden")) {
        $(this).autocomplete('search', '');
    }
});
Run Code Online (Sandbox Code Playgroud)

更新示例: http ://jsfiddle.net/9x3hu/

如果你很好奇,这就是导致你悲痛的线条.看起来在您选择项目后,input窗口小部件的目标会自动聚焦.

这可能看起来很奇怪,但它可能与使用UPDOWN箭头导航下拉列表有关.在这种情况下,你需要专注于返回input.