【问题标题】:jquery autocomplete - type ahead execution with tab rather than selecting an autocomplete optionjquery autocomplete - 使用选项卡提前执行而不是选择自动完成选项
【发布时间】:2013-10-03 15:03:14
【问题描述】:

我有一个 jquery 自动完成类型提前字段。它 100% 正确工作并提示我输入值。但是,它确实需要我点击我想要选择的选项。

如果提前输入的值为 1234,并且我点击 1234,它会使用该值运行一些逻辑,如下例中的警报。

但是,如果我输入 1234 并按 Tab,则未选择自动完成选项,因此不会触发警报。如何告诉 jquery 在按下 tab 时假设输入的值被选中,而不是强制用户从预先输入的自动完成中选择一个选项?

我的语法如下:

function callAutocomplete(element) 
{ 
    $(element).autocomplete( 
    { 
        source: "get_sku_codes", 
        messages: 
        { 
            noResults: '', 
            results: function() {} 
        }, 
        select: function( event, ui ) 
        { 
            var selectedObj = ui.item; 
            alert(selectedObj);
        } 
    }); 
}

重申一下,我想在输入字段中输入1234,按 Tab 键,必须调用自动完成逻辑,就好像我点击了自动完成建议“1234”一样。

这可以吗?可能是输入的 onchange 事件,但是如何调用 onchange 函数来调用自动完成逻辑?

希望这是有道理的。

一如既往的感谢。

【问题讨论】:

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


    【解决方案1】:

    我相信你想要autoFocus 选项:

    如果设置为true,菜单显示时将自动聚焦第一项。

    考虑到这一点,您只需要更改小部件的初始化即可:

    function callAutocomplete(element) 
    { 
        $(element).autocomplete( 
        { 
            source: "get_sku_codes", 
            messages: 
            { 
                noResults: '', 
                results: function() {} 
            }, 
            select: function( event, ui ) 
            { 
                var selectedObj = ui.item; 
                alert(selectedObj);
            },
            autoFocus: true
        }); 
    }
    

    示例: http://jsfiddle.net/WP29E/132/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-05
      • 2011-08-02
      • 2012-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-29
      相关资源
      最近更新 更多