Автозаполнение в полях формы, на основе JQuery плагина JQuery.autocomplete.
| inputid |
Строка, должна содержать id поля типа input в форме к которому привязывается подсказка. Обязательный параметр. |
| source |
Строка, имя таблицы из которой берутся данные для подсказок. Обязательный параметр. |
| column |
Строка, имя столбца из которого берутся данные для подсказок. Обязательный параметр. |
| condition |
Составное условие выполнения макроса. |
| path |
Путь к папке с js и css файлами, если не задать - будет использована /Bin/Lib/Autocomplete. |
| cssfile |
Строка, имя файла с CSS для "раскраски" выпадающего элемента и так далее (см. документацию по jquery plugin'у). |
| delay |
Число, задержка в миллисекундах (?) выпадения подсказки. По умолчанию 10. |
| minChars |
Число, минимальное количество символов, после которых срабатывает подсказка, по умолчанию 1. |
| autoFill |
Режим подсказки прямо в строке ввода, может быть true или false. По умолчанию false. |
| maxItemsToShow |
Число, количество результатов в подсказке. |
Описание и демонстрация может быть найдена на многих сайтах, мы использовали доработанную версию вот этого автора: http://www.pengoworks.com/workshop/jquery/autocomplete.htm.
Пример работающего макроса есть на www.weddingrush.ru/feedback в поле "Город".
Данный макрос в первую очередь предназначен для AJAX запросов, но на текущий момент в системе используется только часть возможностей данного плагина, в частности подключен только режим статических подсказок. Это означает, что в большинстве случаев результат работы макроса нормально закэшируется и не будет сильно грузить сайт, а тысячу-две вариантов любой современный браузер на нормальном интернете потянет без особых проблем.
Система берет из таблицы (указанной в макросе) определенный столбец, выбрасывает повторы и использует данный массив в качестве подсказок. Очень удобно для подсказок городов, станций метро и других часто вводимых в формах строковых значений, число которых ограничено и не должно вычисляться "на лету".
Поскольку пользователь не ограничен в вариантах ввода, как при выпадающих списках, он может добавлять новые значения которых в таблице нет. И если выборка подсказок делается не из стандартизированного справочника (например, списка станций метро), а прямо из таблицы, куда добавляются данные из формы, список подсказок будет расширяться сам по себе со временем.