я пытаюсь сделать JQuery автозаполнения щ с некоторыми странами я получаю от БД с помощью AJAX вызоваJQuery автозаполнения с Ajax вызова, чтобы создать массив
Я изо всех сил о том, как передать мою таблицу значений для автозаполнения
$(document).ready(function() {
$.ajax({
url:Routing.generate('e_veilleur_user_register_countries_autocomplete'),
type:"get",
dataType: 'json',
data: 'test=cool',
async: true,
cache: true,
success: function(data){
var availableTags = data;
}
});
$("#fos_user_registration_form_pays").autocomplete({
source: availableTags
});
});
в результате моего AJAX вызова
[{"countryName":"United States"},
{"countryName":"Canada"},
{"countryName":"Afghanistan"},
{"countryName":"Albania"},
{"countryName":"Algeria"}
Ошибка дано: availableTags is not defined
AJAX является асинхронным, вы используете 'имеющиесяTags' до завершения AJAX. jQuery Autocomplete позволяет указать URL-адрес AJAX в опции 'source:', используйте это. – Barmar
действительно! но поместить URL-адрес будет называть ajax каждый раз, когда я печатаю буклет, не так ли? я хотел бы загрузить весь массив в начале, возможно ли это? или я ошибаюсь и ставил url preloads массив – oligan