JQuery Автозаполнение проблемы

0

Я пытаюсь воссоздать пример автозаполнения JQUery с его сайта:

http://jqueryui.com/autocomplete/#multiple-remote

Единственное, что я меняю, это изменить свойство source:

    source: function( request, response ) {
               $.getJSON( "search.php", {
                 term: extractLast( request.term )
               }, response );
             },

Для того, чтобы:

source: function (request, response) {
                        $.ajax({
                            type: "POST",
                            url: "/UIClientsWebService.asmx/SearchCRMUsers",
                            data: "{term:'" + extractLast(request.term) + "'}",
                            contentType: "application/json; charset=utf-8",
                            dataType: "json",
                            success: function (result) {
                                $("#commentBody").autocomplete("option", "source", result.d);

                        }
                    }, response);                        

                },

Теперь проблема автозаполнения просто работает для первого ','. Когда я выбираю свой первый элемент, тогда, когда я хочу искать и выбирать второй элемент, ничего не происходит. В моем firebug нет ошибки. Я вижу вызов метода поиска, но источник не изменяется, а также ничего не отображается как мои объекты автозаполнения. Я вижу, что мой поисковый запрос изменяется правильно, но на самом деле поиск не происходит.

Теги:
autocomplete

1 ответ

3
Лучший ответ

попробуйте добавить параметр multiple: true для вашего скрипта

$(document).ready(function() {
    src = '/UIClientsWebService.asmx/SearchCRMUsers';
    $("#yourSelector").autocomplete({
        source: function(request, response) {
            $.ajax({
                url: src,
                dataType: "json",
                data: "{term:'" + extractLast(request.term) + "'}",
                success: function(data) {
                    response(data);
                }
            });
        },
        min_length: 3,
        delay: 300,
        multipleSeparator:",",
        multiple: true,
    });
});
  • 0
    Большое спасибо, на самом деле то, что делает это, было строкой ответа (данных), нет необходимости добавлять несколько: true, но в любом случае вы меня спасли

Ещё вопросы

Сообщество Overcoder
Наверх
Меню