Как использовать поле со списком автозаполнения jQuery с данными AJAX JSON?

Мне нужно сделать следующее, используя поле со списком.

  • Поле выбораимеет стандартный список городов, в которых пользователь может осуществлять поиск.
  • Если пользователь вводит текст в поле input, мне нужно сделать вызов ajax, чтобы получить данные и отобразить параметры пользователю.
  • Если данные были получены по запросу пользователя, эти города должны быть добавлены к параметрам Выберите поле

Используя автозаполнение jQueryЯ могу получить данные json при вводе пользователем строки и отображение результатов. Однако я совершенно не знаю, как интегрировать это с помощью combobox.

Comboboxиспользует статический массив данных для поиска и, если я правильно понимаю, использует регулярное выражение для сопоставления значений. Однако как мне прервать его и использовать вызов ajax для извлечения данных с сервера и обновления результатов?

Автозаполнение для текстового поля ввода:

$( "#searchDestination" ).autocomplete({
        delay: 500,
        source: function( request, response ) {
            $.ajax({
                url: "/wah/destinationsJson.action",
                dataType: "json",
                data: {
                    term: request.term
                },
                type: "POST",
                success: function(data){
                    if(data.cities.length == 0)
                        return response(["No matching cities found for " + request.term]);
                    response( $.map(data.cities, function(item){
                        return{
                            label: item.name,
                            value: item.name
                        };
                    })
                    );
                }
            });
        },
        minLength: 2

    });
    });

7
задан Beryllium 6 September 2013 в 17:40
поделиться