Плагин автозаполнения (http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/) - ваш лучший выбор, особенно если вы работаете в приложении AJAXy, поскольку он отправляется на ваш сервер и получает список возможных вариантов в режиме реального времени.
Пример использования:
$("#sometextbox").autocomplete("search.php", {
width: 260,
selectFirst: false
});
И тогда search.php может вернуть:
Great Bittern|Botaurus stellaris
Little Bittern|Ixobrychus minutus
American Bittern|Botaurus lentiginosus
Вы также можете динамически генерировать вывод, потому что плагин передает текст, введенный в строку запроса, в параметре 'q'.
В ответ на запуск автозаполнения, ничего не печатая, плагин не поддерживает это, но его довольно просто реализовать хакерским способом:
Плагин подключается к событию keydown (или нажатие клавиши) поля, как показано ниже (строка 92 не минимизированного кода):
$input.bind(($.browser.opera ? "keypress" : "keydown") + ".autocomplete",...)
Следовательно, вы можете принудительно запустить автозаполнение, выполнив что-то вроде:
$("#autocompletedInput").click(function() {
$(this).trigger(($.browser.opera ? "keypress" : "keydown") + ".autocomplete");
}
Который должен вызвать событие. Возможно, вам понадобится передать случайный символьный код в триггер, чтобы он не задавался вопросом, что происходит.