私はそれについて多くのことを読んでテストしてきましたが、作成したRESTサービスを使用してJSONPでJQueryオートコンプリートを機能させることができませんでした。
ここに私のJavaScriptがあります:
$( "#input" ).autocomplete({
source: function( request, response ) {
$.ajax({
url: "http://localhost:8080/Rest/api/suggest/",
dataType: "jsonp",
data: {
jsonpCallback : "p",
q: request.term
},
success: function( data ) {
response( $.map( data.suggestions, function( item ) {
return {
label: item.LABEL,
value: item.URI
}
}));
}
});
},
minLength: 2
});
JSONP オブジェクトは、
p({});
?jsonpCallback=p を介して REST API に渡されるコールバック関数。javascript/html コードは、http://localhost:8888サーバーの下でローカルに実行されます。
データ応答を表示するには、javascript で "p" コールバック関数を定義する必要があります
function p(data){
alert(data.toSource());
}
私がそれを外すと何も機能しませんが、私が理解できないのは、コールバック関数なしでJQuery オートコンプリートのサンプルコードが機能する理由と、何よりもオートコンプリートからのドロップダウン結果が表示されない理由です。ドロップダウンのオートコンプリート機能を機能させるには、コールバック関数をどうすればよいですか?
ありがとう、ダニエレ