jQuery - 自动完成插件

时间:2011-05-26 09:48:32

标签: jquery autocomplete

我下载了这个插件: http://code.google.com/p/jquery-autocomplete/

我写这个:

    $(document).ready(function () {
    $('#txtStoryTags').autocomplete('@Url.Action("GetTags", "Thread")', { dataType: 'json',
        parse: function (data) {
            var rows = new Array();
            for (var i = 0; i < data.length; i++) {
                rows[i] = { data: data[i], value: data[i].Name, result: data[i].Name };
            }
            return rows;
        },
        formatItem: function (row) {
            return row.Name;
        },
        delay: 40,
        autofill: true,
        selectFirst: false,
        highlight: false,
        multiple: true,
        multipleSeparator: ";"
    });
});

Json的结果是:

[{"TagID":2,"Name":"tag1","Weight":4},{"TagID":4,"Name":"tag2","Weight":1},

直到这一点,没关系。 但是当我尝试使用自动完成时,我得到了结果:

[object Object],[object Object],[object Object],[object Object],[object Object]

那不是期待的结果。 问题是,该客户端脚本有什么问题?我很确定问题就在这里,只是不确切地知道在哪里。

1 个答案:

答案 0 :(得分:1)

我在猜,但是

formatItem: function (row) {
   return row.Name;
},

......我看起来不对劲。您为插件提供的“行”包含datavalueresult字段,但没有Name字段。