これに関連:オートコンプリートをテキストボックスに接続するにはどうすればよいですか?
オートコンプリート(jquery uiから)をテキストボックスにリンクしようとしています。私は次のものを持っています:
$("#txtTags").autocomplete({
minLength: 0,
source: function(request, response) {
$.ajax({
type: "POST",
url: "GetTags.asmx/GetTags",
dataType: "xml",
contentType: "text/xml; charset=utf-8",
success: function(xml) {
alert("hi");
// Completion logic goes here
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(textStatus);
}
});
},
});
alert
成功関数またはエラー関数から取得できないのはなぜですか? .net 1.1
当時 (2002/2003) はサポートされていなかった古いアプリケーション json/jsonpを使用しているため、dataType XML を使用する必要があります。GetTags.asmx は、私の Web サービス メソッドです。もちろん、テキストボックスに入力してもエラーは発生せず、オートコンプリートの選択もありません。
アップデート:
成功の問題を修正したので、成功関数にたどり着きました。質問は、オートコンプリート テキストボックスがまだ空になっているのはなぜですか? この質問の上部に投稿された最初のリンクでは、既にデータベースからオートコンプリート データを取得しています。それを文字列配列として保存し、webmethod で返します。このデータを取得するには、jquery で何をする必要がありますか?
編集 2
これは、chrome / ie から webservice (.asmx) ファイルを実行した後の xml ファイルです。
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<ArrayOfString xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://tempuri.org/quikfix.jakah.com/GetTags">
<string>.net</string>
<string>.net-1.1</string>
<string>3g</string>
<string>6283</string>
<string>7641</string>
<string>8-id</string>
<string>80070005</string>
<string>accounts</string>
<string>actions</string>
<string>activation</string>
<string>active-directory</string>
<string>active-directory</string>
<string>ad</string>
<string>addin</string>
<string>adp</string>
<string>adp-tlm-interface</string>
<string>adptlm</string>
<string>adupdater</string>
<string>ajax</string>
</ArrayOfString>