【问题标题】:Select first jquery UI result automatically自动选择第一个 jquery UI 结果
【发布时间】:2012-02-11 19:39:53
【问题描述】:

我正在使用 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(); }
});

我希望默认选择第一个返回值(就像它在 facebook 上一样)。所以本质上,如果他们只是按回车键,他们将触发第一个结果的选择。

我认为这就是 autoFocus: true 所做的,但它不起作用。没有显示错误,只是没有选择第一个结果。

想法?

【问题讨论】:

    标签: javascript jquery jquery-ui jquery-autocomplete jquery-ui-autocomplete


    【解决方案1】:

    Autofocus 将突出显示第一条记录..

    您的代码只需要包含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(); }
    });
    

    【讨论】:

    • 太棒了,正是我需要的
    【解决方案2】:

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

    【讨论】:

    • 它使第一个结果获得焦点,但实际上并没有被选中
    • 是的。用户必须按回车键确认自动完成。我认为在用户只输入两个或三个字符后自动选择并加载第一个命中是不明智的。
    猜你喜欢
    • 2017-08-06
    • 2011-12-11
    • 1970-01-01
    • 1970-01-01
    • 2019-10-24
    • 1970-01-01
    • 2014-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多