Jquery ui 如何将回调附加到引导Typeahead插件

Jquery ui 如何将回调附加到引导Typeahead插件,jquery-ui,jquery-plugins,jquery-selectors,twitter-bootstrap,typeahead,Jquery Ui,Jquery Plugins,Jquery Selectors,Twitter Bootstrap,Typeahead,使用自定义引导插件实现typeahead功能 如何为“选择”事件附加回调? 以下代码不起作用 var selectedFn = $('.typeahead dropdown-menu').on('select', function( ev ){ console.log(ev); }); 有人能解释一下这是如何工作的吗?您只需听一下您的输入更改事件,如下所示: $'input.typeahead'。在'change'上,函数{…}执行此操作的新方法是: $('.input').type

使用自定义引导插件实现typeahead功能

如何为“选择”事件附加回调? 以下代码不起作用

var selectedFn = $('.typeahead dropdown-menu').on('select', function( ev ){
    console.log(ev);
});

有人能解释一下这是如何工作的吗?

您只需听一下您的输入更改事件,如下所示:


$'input.typeahead'。在'change'上,函数{…}

执行此操作的新方法是:

$('.input').typeahead({ 
    // snip
}).on('typeahead:selected', function() {
    // on selected
});
您只需在回调函数中传递itemSelected,它将为您提供所选项目


希望这对您有用。

请指定处理事件的函数中的参数,以便按照

它给出的结果与typeahead:select而不是typeahead:selected完全相同。我宁愿选择有文件记载的那个

$('.typeaheadGroupSelect').typeahead({ 
    // snip
}).on('typeahead:selected', function(data, value, text) {
    // on selected
    console.log(data);
    console.log(value.idPublic); // here you can access all json object by using value.key
    console.log(value.name);
});
我使用上面的代码片段从选择中访问数据,并将某些隐藏值分配给另一个输入

在此之前,我向typeahead用于查询数据的数据源添加了一个对象,请参见以下内容:

var jsonData = [
        {"id":"1","idPublic":"978343HFJ","name":"Volkswagen Group Sales International"},
        {"id":"2","idPublic":"8343JJR98","name":"BMW Group Sales APAC"},
        {"id":"3","idPublic":"935723JFF","name":"Jaguar Group Sales Asia"},
        {"id":"4","idPublic":"3243JFUFF","name":"Mercedes Benz Group Sales Europe"}
    ];

只有当输入失去焦点时,输入才会触发更改事件。不过,这似乎是唯一对我有效的方法,谢谢!这太棒了,+1因为这对我很有用。你能解释一下为什么这个文档说它的typeahead:select而实际上它的typeahead:select吗?不,这在13年前是正确的,也许api在开发版本中改变了?
$('.typeaheadGroupSelect').typeahead({ 
    // snip
}).on('typeahead:selected', function(data, value, text) {
    // on selected
    console.log(data);
    console.log(value.idPublic); // here you can access all json object by using value.key
    console.log(value.name);
});
var jsonData = [
        {"id":"1","idPublic":"978343HFJ","name":"Volkswagen Group Sales International"},
        {"id":"2","idPublic":"8343JJR98","name":"BMW Group Sales APAC"},
        {"id":"3","idPublic":"935723JFF","name":"Jaguar Group Sales Asia"},
        {"id":"4","idPublic":"3243JFUFF","name":"Mercedes Benz Group Sales Europe"}
    ];