自动选择第一个jquery UI结果

Bre*_*den 17 javascript jquery jquery-ui jquery-autocomplete jquery-ui-autocomplete

我正在使用jQuery Autocomplete来搜索城市的本地数据库.这是代码:

$('#txt_search_city').autocomplete({
    source: url,
    delay: 0,
    autoFocus: true,
    select: function( event, ui ) {
        $( "#id_city" ).val( ui.item.id );
        $(this).closest('form').submit();
    },
    focus: function( event, ui ) { event.preventDefault(); }
});
Run Code Online (Sandbox Code Playgroud)

我希望默认情况下选择第一个返回值(就像在facebook上一样).所以基本上,如果他们只是点击输入,他们将触发第一个结果的选择.

我认为那是做了什么autoFocus: true,但它不起作用.没有显示错误,只是没有选择第一个结果.

思考?

Ric*_*rns 34

自动对焦将突出第一张唱片......

您的代码只需要包含autoFocus: true,如下所示:

$('#txt_search_city').autocomplete({
    source: url,
    delay: 0,
    autoFocus: true,
    select: function( event, ui ) {
        $( "#id_city" ).val( ui.item.id );
        $(this).closest('form').submit();
    },
    focus: function( event, ui ) { event.preventDefault(); }
});
Run Code Online (Sandbox Code Playgroud)


dor*_*ume 10

这似乎已经过时了.我有同样的问题.只是使用.autocomplete({autoFocus: true}) 我正在使用jquery-ui-1.10.0.min,它现在可以使用了.不需要插头.

  • 它会导致第一个结果聚焦,但实际上并未选中 (3认同)
  • 是的。用户必须按回车键确认自动完成。我认为在用户只输入两三个字符后自动选择和加载第一个命中是不明智的。 (2认同)