Tôi đã làm việc mãi mãi về điều này và tìm kiếm tất cả các ví dụ khác và vẫn không thể tìm ra, cố gắng sử dụng tính năng tự động hoàn thành, lần đầu tiên cố gắng đặt tất cả cùng nhau. Dưới đây là JS của tôi:jQuery tự động hoàn thành dữ liệu JSON từ xa không trả về dữ liệu
$(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;
}
});
});
Kiểm tra ra các phản ứng trong Firebug, tôi nghĩ rằng tôi nhận được JSON định dạng đúng ở đây:
{"stuff":[ {"label" : "Dragon", "value" : "http://site.com/animal/firebreathers"}] }
Nhưng đối với một số lý do nó không hooking lên. Sau khi tôi nhấn minLength, một hộp nhỏ, trống sẽ mở ra bên dưới trường tìm kiếm nhưng không có gì ở đó cả.
CẬP NHẬT: Khi tôi thêm "cảnh báo (mục)"; trong cuộc gọi trả lời, tôi nhận được một cửa sổ cho biết "Trang tại site.com cho biết: Object Object" - đây có phải là vấn đề không?
Không phải là mục đối tượng? Bạn đã thử truy cập các tham số trong mục như item.value chưa? –
Cảm ơn bạn !! cảm ơn bạn cuối cùng tôi đã có câu trả lời của tôi. –