0

JQuery Autocomplete プラグインを使用して Web サービスから返されたデータが表示されません。

これは私のコードの JQuery 部分に問題があると確信しています。(Firebug は、以下のようにフォーマットされた Web サービスから文字列を取得していることを示しています。)

"[\"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);

上記のコードは、私のドロップダウンボックスにも各要素を囲む " 記号があることを除いて、ほとんど機能します。これを編集して、余分な文字を取り除くことができますが、そうしなければならないという事実は、私がそれを完全に正しく理解していないのではないかと疑っています.どこか..

4

1 に答える 1

0

次のスクリプトを成功イベント ハンドラーに使用します。

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

詳細はこちら: http://api.jqueryui.com/autocomplete/#event-response

于 2012-10-17T14:49:37.827 に答える