将textarea设置为标签而不是使用jqueryui的自动完成值

时间:2014-07-03 11:39:17

标签: jquery jquery-ui autocomplete

因此,我要说我有一个名称和ID这些名称对应的数据库。我想要一个textarea(好input type="text")根据名称自动完成,但也要填充标签而不是textarea中的值。我可以通过隐藏的输入字段设置值。

我怎样才能在jquery中这样做?

这是我的意思的一个例子(不起作用 - 不确定原因):

http://jsfiddle.net/mMa7d/

如果确实有效,则填写数字而不是textarea中的名称。

1 个答案:

答案 0 :(得分:2)

您可以使用$.map获取姓名

var data = [{
    label: "John Doe",
    value: 6
}, {
    label: "Jane Doe",
    value: 7
}];
$(function () {
    $("#names").autocomplete({
        source: $.map(data, function (value, key) {
            return {
                value: value.label
            };
        })
    });
});

Demo

修改

 $("#names").autocomplete({
     source: function (request, response) {
         $.getJSON("your url here", function (data) {
             response($.map(data, function (value, key) {
                 return {
                     value: value.label
                 };
             }));
         });
     }
 });