Jquery自动完成-如何将单击事件添加到列表中

Jquery自动完成-如何将单击事件添加到列表中,jquery,Jquery,嗨,我正在使用下面的代码填充我的自动完成列表 $('#input').autocomplete({ ajax_get : get_roles}); function get_roles(v,cont,roleName){ var roleName = roleName.value; roleName = roleName.toLowerCase(); $.get('/da/roleautocomplete?

嗨,我正在使用下面的代码填充我的自动完成列表

    $('#input').autocomplete({ ajax_get : get_roles});

    function get_roles(v,cont,roleName){
            var roleName = roleName.value;
            roleName = roleName.toLowerCase();
            $.get('/da/roleautocomplete?roleName='+escape(roleName),{q:v},
                function(obj){
                  var res = [];
                  for(var i=0;i<obj.length;i++){
                    res.push({ id:i , value:obj[i]});
                  }
                  cont(res);
                },
                'json')
        }
但是没有用。有人能帮我解决这个问题吗?

演示:

帮助阅读:(您可以阅读有关可用选项和事件等)

代码:

$( "#search" ).autocomplete({
    source: function( req, resp ) {
        $.post( "/echo/json/", {
            json: '["Rambo", "Foobar", "This", "That", "Batman", "Hulk"]',
            delay: 1
        }, function(data) {
            resp( data );
        }, "JSON" );
    },
    select: function(event, ui) {
        var TABKEY = 9;
        this.value = ui.item.value;

        if (event.keyCode == TABKEY) { 
            event.preventDefault();
            this.value = this.value + " ";
            $('#search').focus();
        }

        return false;
    }
});
演示:

帮助阅读:(您可以阅读有关可用选项和事件等)

代码:

$( "#search" ).autocomplete({
    source: function( req, resp ) {
        $.post( "/echo/json/", {
            json: '["Rambo", "Foobar", "This", "That", "Batman", "Hulk"]',
            delay: 1
        }, function(data) {
            resp( data );
        }, "JSON" );
    },
    select: function(event, ui) {
        var TABKEY = 9;
        this.value = ui.item.value;

        if (event.keyCode == TABKEY) { 
            event.preventDefault();
            this.value = this.value + " ";
            $('#search').focus();
        }

        return false;
    }
});

当我第一次尝试使用
select:function(event,ui){…}
时,我也遇到了类似的问题,但这绝对是正确的选择


关键是使用
ui.item
获取单击或以其他方式选择的选项。我最初使用的是
事件
,然后是
,但是对于单击和按键选择来说,它们是不同的(从一些角度来看,请使用
控制台.log
),因此
ui.item
就是您想要的。自动完成将设置
标签:…,值:…
,因此最有可能使用的是
ui.item.label
ui.item.value

我第一次尝试使用
select:function(event,ui){…}
时遇到了类似的问题,但这肯定是正确的方法


关键是使用
ui.item
获取单击或以其他方式选择的选项。我最初使用的是
事件
,然后是
,但是对于单击和按键选择来说,它们是不同的(从一些角度来看,请使用
控制台.log
),因此
ui.item
就是您想要的。自动完成将设置
标签:…,值:…
,因此最有可能使用的是
ui.item.label
ui.item.value

我不知道如何“接受”,单击哪个链接,如何投票选出一个好答案?有人能告诉你吗?如果你看问题的答案,答案左上角有带上下箭头的数字。正下方是一个看起来像支票的图标。这些控件元素的标题属性文本解释了如何使用它们。我不知道如何“接受”,单击哪个链接,如何投票选出一个好的答案?有人能告诉你吗?如果你看问题的答案,答案左上角有带上下箭头的数字。正下方是一个看起来像支票的图标。这些控件元素的title属性文本解释了如何使用它们。在我的代码中,如果使用上面的select函数,它就不会调用select标记中编写的函数。请帮忙@linusunisfed你能在JSFIDLE中进行更改并将其弹给我吗?或者你似乎从上面的帖子中得到了答案,不管怎样,祝你玩得开心!:)实际上我使用的是另一个插件。这是jquery.js和Autocomplete.js,这是一些jqac插件。您使用的插件可能不同。请让我知道!Hiya@linusunisfed嗯,不用担心bruv:)看起来不太像,但是你能帮我弹一下你正在使用插件的页面的url吗?在我这边已经很晚了,所以我会在10/20分钟后睡觉:)让我知道你在使用哪个插件,祝你玩得愉快,干杯!我正在使用下面的插件-在我的代码中,如果使用上面的select函数,它就不会调用select标记中编写的函数。请帮忙@linusunisfed你能在JSFIDLE中进行更改并将其弹给我吗?或者你似乎从上面的帖子中得到了答案,不管怎样,祝你玩得开心!:)实际上我使用的是另一个插件。这是jquery.js和Autocomplete.js,这是一些jqac插件。您使用的插件可能不同。请让我知道!Hiya@linusunisfed嗯,不用担心bruv:)看起来不太像,但是你能帮我弹一下你正在使用插件的页面的url吗?在我这边已经很晚了,所以我会在10/20分钟后睡觉:)让我知道你在使用哪个插件,祝你玩得愉快,干杯!我正在使用下面的插件-