Нужна помощь в создании выпадающих списков при вводе данных формы в jQuery

#javascript #jquery #jquery-ui

#javascript #jquery #jquery-пользовательский интерфейс

Вопрос:

Я работаю над этой тестовой страницей: http://problemio.com/test.php

Что я пытаюсь сделать, так это: когда пользователь вводит данные, я хочу перейти к базе данных и выполнить поиск доступных для них вариантов. Часть с выборкой элементов работает.

Что не работает, так это отображение элементов. Я поиграл с автозаполнением jQuery здесь: http://docs.jquery.com/UI/Autocomplete но это просто дает вот это:

 $("input#autocomplete").autocomplete({
    source: ["c  ", "java", "php", "coldfusion", "javascript", "asp", "ruby"]
});
 

И я не уверен, как заполнить этот список после того, как мой вызов ajax вернет доступные параметры. Есть идеи о том, как правильно поступить здесь?

Комментарии:

1. Вы читали jqueryui.com/demos/autocomplete/#remote ?

Ответ №1:

Вы можете передать путь к вашему серверному скрипту в свойство source. Он должен возвращать объект json

 // from http://jqueryui.com/demos/autocomplete/#remote
$( "#birds" ).autocomplete({
    source: "search.php",
    minLength: 2,
    select: function( event, ui ) {
        log( ui.item ?
            "Selected: "   ui.item.value   " aka "   ui.item.id :
                "Nothing selected, input was "   this.value );
    }
});
 

Комментарии:

1. о да, это именно то, что мне нужно! Спасибо!

Ответ №2:

Это должно работать автоматически, предоставляя URL-адрес в атрибуте автозаполнения source , возвращающем массив элементов.

Вот несколько примеров: http://view.jquery.com/trunk/plugins/autocomplete/demo /