Tôi cần phải làm như sau bằng cách sử dụng combobox.Làm thế nào để sử dụng hộp kết hợp tự động hoàn thành jQuery với dữ liệu JSON AJAX?
Select box
có danh sách mặc định các thành phố mà người dùng có thể tìm kiếm.- Nếu người dùng nhập văn bản vào hộp
input
, tôi cần thực hiện cuộc gọi ajax để tìm nạp dữ liệu và hiển thị các tùy chọn cho người dùng. - Nếu dữ liệu là lấy cho yêu cầu của người dùng, những thành phố nên được nối thêm vào các tùy chọn của
Select box
Sử dụng jQuery autocomplete Tôi có thể lấy dữ liệu json trên người dùng nhập vào một chuỗi và hiển thị kết quả. Tuy nhiên, tôi khá thất bại về cách tích hợp này bằng cách sử dụng combobox.
Combobox sử dụng mảng dữ liệu tĩnh để tìm kiếm và nếu tôi hiểu chính xác, hãy sử dụng cụm từ thông dụng để khớp với các giá trị. Tuy nhiên, làm thế nào để tôi làm gián đoạn nó và sử dụng cuộc gọi ajax để lấy dữ liệu từ máy chủ và cập nhật kết quả?
Autocomplete cho đầu vào hộp văn bản:
$("#searchDestination").autocomplete({
delay: 500,
source: function(request, response) {
$.ajax({
url: "/wah/destinationsJson.action",
dataType: "json",
data: {
term: request.term
},
type: "POST",
success: function(data){
if(data.cities.length == 0)
return response(["No matching cities found for " + request.term]);
response($.map(data.cities, function(item){
return{
label: item.name,
value: item.name
};
})
);
}
});
},
minLength: 2
});
});
Dữ liệu nguồn tự động hoàn thành của bạn trông như thế nào? –
@ ltiong_sh Tự động điền của tôi cho hộp văn bản nhập liệu đơn giản hoạt động tốt với JSON. (cập nhật câu trả lời của tôi mặc dù) – brainydexter
khi bạn nói danh sách được lấy nên được nối vào danh sách mặc định, điều đó có nghĩa là các mục mặc định sẽ luôn hiển thị, hoặc chúng cũng sẽ được lọc ... dựa trên đầu vào của người dùng? –