2

这是我的代码。您还可以观看此 jsfiddle进行现场演示。

$(function()
{
    var source = [{id:1, value: "One"},
                 {id:2, value: "Two"},
                 {id:3, value: "Three"},
                 {id:4, value: "Four"}];

    $("input").autocomplete({
        source: function(request, response)
        {
            var term = request.term.split(/,\s*/).pop();

            response($.ui.autocomplete.filter(source, term));
        },
        select: function(e, ui)
        {
            var terms = this.value.split(/,\s*/);

            terms.pop();
            terms.push(ui.item.value, "");

            this.value = terms.join(", ");

            return false;
        }
    });
});

如您所见,我已经实现了一个简单的多选。我的问题是,我不仅需要来自原始数据源的值,还需要它们的 ID。如何才能做到这一点?完成自动完成字段后,如何获取我选择的所有项目?

4

1 回答 1

1

看看这个DEMO链接,这将你代表选定的值和它在自动完成中的 id。

terms.push(ui.item.id+"="+ui.item.value, "");

我希望这会对你有更多帮助。

编辑:我已经更新了这个小提琴。

于 2013-03-13T10:49:08.687 回答