以下のコードを使用してオートコンプリートを実装しようとすると、次のエラーが表示されます。
.data("autocomplete") is undefined
ただし、最後から .data() メソッドを削除すると、正常に動作します (.data() が提供するカスタマイズ可能なグラフィックがなくても)。誰が何が問題なのか教えてもらえますか?
$("input#testInput").bind("autocompleteselect", function (event, ui) {
}).autocomplete({
appendTo: "#autoCompList",
source: function (request, response) {
$.ajax({
url: JSONP CALL URL
dataType: "jsonp",
data: {
featureClass: "P",
style: "full",
maxRows: 12,
name_startsWith: request.term
},
success: function (data) {
response($.map(data.data, function (item) {
fbPageJson = item;
return {
label: item.name,
image: item.picture,
json: item,
}
}));
},
});
}
}).data("autocomplete")._renderItem = function (ul, item) {
return $("<li></li>").data("item.autocomplete", item).append("<a><img src='" + item.image + "' alt='no photo'/></a>" + item.label).appendTo(ul);
};