Автозаполнение и AJAX - PullRequest
1 голос
/ 05 июля 2011

Я загружаю строковый массив, используя $.getJSON, чтобы использовать его в качестве значения в автозаполнении jquery ui. Я не могу заставить его работать.

Код (функция успеха вызывается правильно, и я вижу предупреждение):

$(function () {
    $.getJSON(baseUri + 'truck/models/', {}, function (data) {
        $("#ModelName").autocomplete({ 
                source: function( request, response ) {
                    alert(data);
                    response(data);
        }
        });
    });
});

Контент, возвращаемый сервером:

["KIRUNA K350","MAFI","SISU TR180","SISU TRX242","SVETRUCK 32T","VOLVO A25D","VOLVO A25E","VOLVO A40","VOLVO BMl120","VOLVO BML90"]

Ошибка, которую я получаю при вводе в поле ввода:

Uncaught TypeError: Невозможно прочитать свойство 'element' из неопределенного

Ответы [ 3 ]

1 голос
/ 05 июля 2011

Похоже, что вы просто делаете выборку ajax для параметров автозаполнения при загрузке страницы, поэтому вам не нужно использовать функцию для источника, которую вы можете просто сделать:

$(function () {
    $.getJSON(baseUri + 'truck/models/', {}, function (data) {
        $("#ModelName").autocomplete({ 
                source: data
        });
    });
});
0 голосов
/ 05 июля 2011

У меня был другой плагин, который определил menu в контексте jQuery. Я удалил этот плагин, и все работает отлично, знаю. Что-то противное, да?

0 голосов
/ 05 июля 2011

Необходимо убедиться, что вы установили значение объекта

Таким образом

({источник: данные});

см., Например, скрипту: http://jsfiddle.net/dDCEW/

...