Класс AutoSuggestControl
Класс AutoSuggestControl содержит всю функциональность, необходи¬мую для реализации автодополнения. Данный элемент управления дол-мен знать, с каким текстовым полем и с каким поставщиком подсказок АВ должен взаимодействовать. Все это делает простой конструктор:
... function AutoSuggestControl(oTextbox, oProvider) { 5- this, provider = oProvider; I this.textbox = oTextbox;
Классы
Для реализации функциональности двух компонентов apxi клиента нам потребуются два класса с именами соответственно I SuggestionControl и SuggestionProvider.
Архитектура
В главе 1 была рассмотрена базовая архитектура решений, предам мых Ajax при разработке пользовательского интерфейса и мехавш Ajax на стороне клиента.
Таблица в базе данных
Чтобы проще было определять перечень названий штатов, областей I провинций, соответствующих введенному фрагменту текста, необхо-рмо задействовать таблицу базы данных. Существует несколько !
HTML
В первую очередь создается файл HTML, который будет отобра на стороне клиента. В нашем случае код HTML должен включатц сание текстового поля ввода и текстовую область, где будет вь ся список подсказок. Вы, наверное, уже знакомы с тем, как oi ется поле ввода на языке HTML:
Обзор функциональных возможностней
Прежде чем приступить к разработке, всегда полезно точно понять, что вы собираетесь создавать. Сказать, что мы собираемся повторить функциональность Google Suggest просто, но что это означает мом деле? Пример, который вы создадите в этом разделе, будет < дать следующими функциональными возможностями:
Создание поля ввода с функцией автодополнения
Новые концепции программирования лучше всего изучать на практи¬ческих примерах. Google Suggest {www.google.com/webhp?complete=l) -•то очень простое приложение, основанное на технологии Ajax, однако многие программисты потратили немало времени на его изучение, анализ и попытки воспроизвести нечто подобное.
Другие инструменты
Существует масса инструментального программного обеспечев работы с JSON в других языках, применяемых для создания ных сценариев. JSON может применяться в:
• C#/.NET. Библиотека JSON для С#, написанная Дугласом '. фордом (www.crockford.com/JSON/cs/).
• COLDFUSION. Библиотека CFJSON, написанная Джехаем Че (Jehiah Czebotar). Доступна по адресу http://jehiah.eom/p cfjson.
JSON-PHP
JSON-PHP - это утилита РНР, облегчающая возможность преобр ния данных в/из формата JSON. Она написана Михалем ME (Michal Migurski), и ее можно скачать по адресу http://mike.teczi jsonMml. Для работы с JSON в РНР достаточно подключить файл« рпр к своей странице и воспользоваться из него объектом JSON.
Инструментальные средства для работы с JSON на стороне сервера
Вы уже знаете, что технология Ajax имеет прямое отношение к ( низации взаимодействий между клиентом и сервером, т. е.