2013-12-16 3 views
0

Я пытаюсь сделать автозаполнение с файлом .jsp, но раскрывающийся список не отображается.jQueryUI - Автозаполнение не отображается с помощью json

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 с параметром и возвращает ОК, но выпадающий не отображается. PS: этот предупреждающий диалог из «alert (data)» также не отображается.

+0

его средства есть некоторая проблема в вызове, который вы делаете. Положите ошибку: заблокируйте и посмотрите, получаете ли вы какую-либо ошибку. – Gautam

ответ

0

Вы работаете слишком усердно - делаете то, что вам не нужно. И некоторые параметры, предназначенные для функции автозаполнения, передаются, например, функции 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, вместо «треска» вы получите параметр с именем «термин.» Это автоматическое поведение виджета автозаполнения.

Ваш jsp должен будет вернуть массив JSON. Каждый элемент этого массива также представляет собой массив с двумя членами, «значение» и «метка».

+0

все еще не работает ... Я добавил ошибку: alert ('error') и он появляется каждый раз, когда я ввожу что-то в поле ввода. Мое поле ввода html:

lucasdc

+0

Где вы положили это предупреждение ('error')? – mcarson

+0

Ваш код работал. Я взглянул на свой код и были некоторые синтаксические ошибки. Благодарю. – lucasdc

Смежные вопросы