如何在jquery自动建议插件中获取所选值

如何在jquery自动建议插件中获取所选值,jquery,jquery-plugins,Jquery,Jquery Plugins,这里我使用了一个自动建议插件 我在获取所选值时遇到问题 var data = {items: [ {value: "21", name: "Mick Jagger"}, {value: "43", name: "Johnny Storm"}, {value: "46", name: "Richard Hatch"}, {value: "54", name: "Kelly Slater"}, {value: "55", name: "Rudy Hamilton"}, {value: "79", n

这里我使用了一个自动建议插件

我在获取所选值时遇到问题

var data = {items: [
{value: "21", name: "Mick Jagger"},
{value: "43", name: "Johnny Storm"},
{value: "46", name: "Richard Hatch"},
{value: "54", name: "Kelly Slater"},
{value: "55", name: "Rudy Hamilton"},
{value: "79", name: "Michael Jordan"}
]};

$("#search_query_top").autoSuggest(data.items, {
    selectedItemProp: "name",
    selectionLimit: 1, 
    searchObjProps: "name",
    startText: "Search by name,",
    resultClick: function(items){ console.log(items);}
});
拜托,有人能帮我一下吗


谢谢

以下是我为您提供的解决方案:

//this will store all the results.
var mySearchResult = {};
$("#search_query_top").autoSuggest(data.items, {
    selectedItemProp: "name",
    selectionLimit: 3, 
    searchObjProps: "name",
    startText: "Search by name,",
    //each time i add a new item, i store it in the mySearchResult object
    selectionAdded: function(item){mySearchResult[(item.clone().find("a").remove().end().text())] = true},
    //each time i remove an item, i delete if from mySearchResult and i remove the item from the visual.
    selectionRemoved: function(item){delete mySearchResult[(item.clone().find("a").remove().end().text())]; item.remove();}
});

$('#sbmButton').click(function(e){

    var tab = [];
    for(var k in mySearchResult){
        tab.push(k); 
    }

    alert(tab.join("\n"));

});
最后一个错误仍然出现,您添加的第一个项目不会从显示列表项目中删除

你可以在这上面查一下。 我来看看这只小虫子是怎么回事

希望对你有帮助

编辑:查看另一个答案,找到一个更“友好”的方法来做同样的事情。你得做些改变,但我认为这是最好的办法。
我真的觉得这个插件在寻找这个值时有点棘手。最后,我不推荐这个

.autoSuggest()中添加
asHtmlID:“aaaaaa”


$('#sbmButton')。单击()
,添加
控制台.log($('#as-values-aaaaa')。val())

您可以尝试items.valueYup,尝试类似$('search\u-query\u-top')。val();告诉我们结果是什么它不起作用了…@Okazari它显示出了不强大的力量!这要简单得多。当您使用“asHtmlID:'aaaaaa'作为选项时,将创建一个新的div(在没有该选项的情况下不会创建该div),其值为所有键,键之间用逗号分隔。