Asp.net JQuery AutoComplete不显示数据

时间:2012-10-17 14:21:25

标签: jquery asp.net

我没有看到使用JQuery Autocomplete插件从我的webservice返回的数据。

我确信这是我的代码的JQuery部分的问题。 (Firebug显示我从我的webservice获取了一个字符串,格式如下所示。)

"[\"Component 1\",\"Component 2\",\"Component 2\",\"Component 3\"]"

(我确实认为可能有2个项目相同,但删除副本没有任何区别。)

我的JQuery代码是......

 $('#tags').autocomplete({             
                            source: function (request, response) {
                                    $.ajax({
                                            type: "POST",
                                            contentType: "application/json; charset=utf-8",
                                            url: "QuickSearch/QuickSearch.asmx/GetDealerships",
                                            data: "{'s':'" + request.term + "'}",
                                            dataType: "json",
                                            async: true,
                                            success: function (data){
                                                    response(data.d);
                                                },
                                                error: function (result) {
                                                        alert("Due to unexpected errors we were unable to load data");
                                                    }
                                });
                    },
        minLength: 2
                });
        });

所以有人能告诉我成功的错误:功能吗?

由于

修改

    var array = data.split(",");
    response(array);

上面的代码几乎可以工作,除了我的下拉框还有“包裹每个元素的符号。我可以编辑它以删除备用字符,但事实上我必须这样做让我怀疑我没有它在某个地方非常正确..

1 个答案:

答案 0 :(得分:0)

将此脚本用于成功事件处理程序:

response($.map(data, function (item) {
     return { label: item, value: item };
}));

更多信息:http://api.jqueryui.com/autocomplete/#event-response