Проблема с автозаполнением (jquery) - PullRequest
0 голосов
/ 19 июля 2011

У меня проблема с автозаполнением.Код ниже возвращает меня
["foo@foo.com", "bar@bar.com"]

   $('.autocomplete').keyup(function() {
    tid = $(this).attr('id')
    $(this).autocomplete({
        source: function (req, resp){           
            $.ajax(
            {
                url: "autocompl.asp", 
                data:$("#msgForm").serialize() + "&field="+tid ,
                    success : function( resp ) {    
                        return resp     
                    }
            })
        }

    });
  });

Но предложения не появляютсяЭто сработало для меня, когда я вызвал автозаполнение без каких-либо дополнительных параметров.Любая подсказка?

Заранее спасибо

Магда

1 Ответ

0 голосов
/ 09 сентября 2011

Обратите внимание, что один из ваших параметров для исходной функции - соответственно, и впоследствии вы используете другой.Я думаю, что вам нужно использовать первый респ, чтобы отправить объект ответа обратно.

Я тоже использую это, и это работает для меня (Вместо того, чтобы отправлять массив значений, я отправляю массивобъекты с двумя атрибутами, но я не думаю, что это обязательно).

  1. id
  2. label

, поэтому код внутри ajax success должен выглядетькак-то так (моя переменная данных - это ваша вторая переменная, другое имя, чтобы избежать путаницы):

success: function(data) {
    for (i in data) {
        a = {}
        a.id = data[i]
        a.label = data[i]
        options.push(a)
    }
    resp(options)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...