Tagit UI:如何在自动完成时显示标记名称并选择但是发送标记ID

时间:2016-02-23 21:43:13

标签: jquery json jquery-ui autocomplete tag-it

我正在使用最新的Tagit UI。我从一个带有JSON数组的API中提取,我正在构建一个搜索功能。我希望通过使用tagid填充网址来搜索TagId。我可以使用它,但标签的显示值是标签ID,而不是" Name"中的所需文本。领域。如何在键入(自动完成)时显示JSON数组的名称字段,当我选择标记但是发送" Id"提交搜索表单时的字段信息?

由于

这里是tagit初始化。我先调用数组,然后运行tagit脚本。

// Tag It
//load the array first
$(function (request, response) {

    var tagId;

    $.ajax({
        dataType: "json",
        data: { term: request.term },
        type: 'GET',
        contentType: 'application/json; charset=utf-8',
        crossDomain: true,
        cache: true,
        url: '/Api/Tags/StartsWith',
        success: function (data) {
            var tagsArray = $.map(data, function (item) {
                return {
                    label: item.Name,
                    value: item.Id,
                }
            });

            $('.tagit-tags').tagit({
                availableTags: tagsArray,
                allowSpaces: true,
                singleFieldNode: 'Id',
                placeholderText: 'Search by Tag',
                autocomplete: {
                    source: tagsArray,
                    minLength: 1,
                    delay: 0,
                    select: function (event, ui) {
                        $('.tagit-tags').val(ui.item.Name);
                    }
                }
            });
        },
    });
});

0 个答案:

没有答案