jQuery UI AutoComplete ウィジェットを WebForms アプリケーションのリモート データ ソースと連携させようとしています。Web サービスの呼び出しに成功しましたが、返されたアイテムのリストがコントロールによってポップアップ表示されません。
ここに私のマークアップがあります:
<p>
<label for="birds" class="fieldLabel">Company:</label>
<input id="existingProgramCompanyName" type="text" style="width: 350px" />
</p>
そして、ここに私のスクリプトがあります:
$("#existingProgramCompanyName").autocomplete({
source: "/Services/ProgramListServices.asmx/FilteredProgramList",
minLength: 3,
select: function (event, ui) {
alert('Got it!');
}
});
過去にこれを行ったときはいつでも、私の最大の問題は正しい形式でデータを返すことでした。AutoComplete ウィジェットは JSON を必要とするため、コードが有効な JSON を返すようにするのにかなりの時間を費やしました。Web サービスから返される実際の文字列は次のとおりです。
{
"Companies":[{"Id":"1","Value":"First","Label":"First"},
{"Id":"2","Value":"Second","Label":"Second"},
{"Id":"3","Value":"Third","Label":"Third"}],
"HasData":true,"Message":"","Success":true
}
それは有効なJSONですか?
コントロールは、アニメーション化された小さな読み込みイメージを正しく表示します。Web サービスが呼び出され、エラーなしで返されます。しかし、AutoComplete コントロールがリストをポップアップ表示することはありません。
私がこれまでに持っているものに何か問題があると思いますか? そして、これをトラブルシューティングするための次のステップは何ですか?