Jak korzystać z combobox autouzupełniania jQuery z danymi JSON AJAX?
Muszę wykonać następujące czynności, używając pola kombi.
Select box
ma domyślną listę miast, z których użytkownik może wyszukiwać.Jeśli użytkownik wpisuje tekst winput
pole, muszę wykonać wywołanie ajax, aby pobrać dane i wyświetlić opcje dla użytkownika.Jeśli dane zostały pobrane na żądanie użytkownika, miasta te powinny zostać dołączone do opcjiSelect box
Za pomocąautouzupełnianie jQuery Jestem w stanie pobrać dane json na temat wprowadzania przez użytkownika ciągu znaków i wyświetlania wyników. Jednak nie mam pojęcia, jak zintegrować to za pomocą combobox.
Combobox używa statycznej tablicy danych do wyszukiwania i jeśli rozumiem to poprawnie, używa wyrażenia regularnego do dopasowania wartości. Jak jednak przerwać i użyć wywołania ajax do pobrania danych z serwera i zaktualizować wyniki?
Autouzupełnianie dla pola tekstowego wprowadzania:
$( "#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
});
});