Обработка данных из пользовательского источника в автозаполнении jquery-ui - PullRequest
5 голосов
/ 07 февраля 2011

Я пытаюсь использовать jquery-ui для автозаполнения в поле поиска. Поскольку поиск зависит от значения другого поля формы, я использую обратный вызов для источника. Я вижу, что запрос отправлен правильно. Мой удаленный скрипт возвращает простой массив строк, и в этот момент я не могу заставить его работать. Раскрывающийся список никогда не создается. Кто-нибудь может сказать мне, почему? Вот код:

    $(document).ready(function(){
    $("#species").autocomplete({
      source: function( request, response ) {
        $.ajax({
          url: "/includes/species-ajax.cfm",
          dataType: "jsonp",
          data: {
            term: request.term,
            searchBy : function() { 
              var sb = $("#searchBy_hidden").val();
              return (sb ? sb : 'common_name'); }
          },
          success: function( data ) {
            response( $.map( data, function( item ) {
              return {
                label: item.name,
                value: item.name
              }
            }));
          }
         });
    }});
  });

<input type="hidden" name="searchBy_hidden" id="searchBy_hidden" value="common_name" />
Enter the name of a species: <input type="textbox" size="30" id="species" />

Спасибо,

1 Ответ

4 голосов
/ 07 февраля 2011

Попробуйте изменить dataType на 'json', а не 'jsonp'

...