Я пытаюсь сделать автозаполнение с файлом.jsp, но раскрывающийся список не отображается.
var cod = document.getElementById('item').value;
$('input#item').autocomplete({
source: function( request, response ) {
$.ajax({
url: "autocomplete.jsp?cod="+cod,
dataType: "json",
minLength: 2,
data: {
maxRows: 12
},
success: function(data) {
alert(data);
response(data);
}
});
}
});
Я посмотрел на "Сети" в Chrome, и он вызывает URL-адрес с параметром и возвращает OK, но раскрывающийся список не отображается. PS: этот предупреждающий диалог из "alert (data)" также не отображается.
Вы слишком много работаете - делаете то, что вам не нужно. И некоторые параметры, предназначенные для функции автозаполнения, передаются, например, функции ajax - minLength. Пусть реструктурировать это так:
$(window).load(function() {
$('input#item').autocomplete({
source: 'autocomplete.jsp?maxRows=12',
minLength: 2,
select: function (event, ui) {
alert(ui.item.value + ' ' + ui.item.label);
},
});
});
В вашем jsp вместо "cod" вы получите параметр "term". Это автоматическое поведение виджета автозаполнения.
Ваш jsp должен будет вернуть массив JSON. Каждый элемент этого массива также представляет собой массив с двумя членами, "значение" и "метка".