私はこれについて永遠に働いていますし、他のすべての例を検索しても、それを理解できないようです。初めてjquery UIオートコンプリートを使用しようとしました。これはすべて一緒に。ここに私のJSです:jQueryオートコンプリートリモートJSONデータソースがデータを返さない
$(document).ready(function() {
$("#search-title").autocomplete({
source: function (request, response) {
$.ajax({
url: "/include/autocomplete",
dataType: "json",
data: {
term: request.term
},
success: function (data) {
response($.map(data.stuff, function (item) {
return {
label: item.name,
value: item.name
};
}));
}
});
},
minLength: 2,
focus: function (event, ui) {
$(event.target).val(ui.item.label);
return false;
},
select: function (event, ui) {
$(event.target).val(ui.item.label);
window.location = ui.item.value;
return false;
}
});
});
はFirebugのでレスポンスをチェックアウト、私は私がここに適切な形式のJSONを取得していると思う:
{"stuff":[ {"label" : "Dragon", "value" : "http://site.com/animal/firebreathers"}] }
しかし、それはフックいない何らかの理由で。 minLengthを押すと、小さな空のボックスが検索フィールドの下に開きますが、そこには何も表示されません。
更新:「警告(アイテム);」を追加すると、応答呼び出しで、「site.comのページにはobject object」というメッセージが表示されます。これが問題になる可能性がありますか?
アイテムはオブジェクトではありませんか? item.valueなどの項目でパラメータにアクセスしようとしましたか? –
ありがとうございました!あなたのおかげで私はついに答えました。 –