Суть проблемы
В предыдущей статье, «Что делать с кнопкой «назад» в браузерах» вводились такие понятия, как «горизонтальные» и «вертикальные» ссылки. Если вы не читали ее, пожалуйста, ознакомьтесь перед дальнейшим изучением этой.
Итак, вертикальные ссылки не только делают несостоятельной кнопку «назад» в браузерах, но и возможность браузера сохранить ссылку на данную страницу в закладках. Это очень похоже на проблему невозможности сохранения HTTP POST запросов тем же способом, что и HTTP GET просто потому, что они не отправляют данные в адресной строке (прим.: имеется в виду, конечно же, «полное» сохранение результатов POST запроса, потому что сейчас большинство таких запросов являются комбинированными, когда на какую-то определенную (GET) строку отправляются POST данные. В таком случае мы можем сохранить только результирующий URL, но никак не те данные, что мы отправили POST'ом на него.)
AJAX (Asynchronous JavaScript and XML) – это кросс-платформенная технология создания Web-приложений. Данная технология позволяет разработчику выполнять асинхронные запросы к Web-приложениям, используя язык разметки данных XML.
Технология фирмы Microsoft с кодовым именем “Atlas" позволяет использовать AJAX при создании серверных приложений основанных на технологии ASP.NET 2.0.
Данная статья посвящается созданию простейшего Web-приложения, позволяющего динамически на стороне клиента заполнять данными выпадающий список, а также производить динамическую загрузку дополнительной информации из базы данных с использованием технологий ASP.NET 2.0, AJAX и Atlas.
Сейчас много различных библиотек и фреймворков доступно для разработчиков. Честно говоря я думаю, что их слишком много. Я изучил прекрасную библиотеку на javascript - Prototype.js и удивительную библиотеку script.aculo.us для создания визуальных эффектов.
xAjax это open source библиотека классов PHP, которая позволяет вам легко создавать мощные, вебориентированные Ajax приложения использующие HTML, CSS, JavaScript, и PHP. Приложения, разработанные при помощи библиотеки xAjax могут асинхронно вызывать расположенные на сервере PHP функции и обновлять содержание без перезагрузки страницы.
Сегодня я написал простые плагины для Smarty, поддерживающие AJAX. Я не пытался разработать мощный фреймворк для веб-приложений,- просто хотелось дать идею, как можно интегрировать AJAX-технологию в Smarty. Но если у Вас есть любые предложения по улучшению системы, или Вы просто хотите отправить отзыв, оставьте комментарий на сайте.
На страницах вашего сайта содержится множество специализированных терминов. Когда пользователь просматривает сайт, у него могут возникать вопросы касательно этих терминов. Как сделать так, чтобы посетитель сайта по мере возникновения вопросов мог незамедлительно получать на них ответы? Раньше термины на страницах сайта оформлялись как ссылки и пользователь при желании мог кликать по ним и получать окно с контекстной подсказкой. Это подход достаточно неуклюжий, он отнимает у пользователя слишком много времени - на то, чтобы кликнуть по ссылке, дождаться загрузки окна и затем закрыть окно. В эпоху AJAX мы можем быть ближе к пожеланиям пользователей.
Одно из главных затруднений, с которым сталкиваются разработчики интерфейсов веб-приложений, состоит в том, что после того, как страница оказалась в браузере клиента, связь браузера с сервером заканчивается. Любое действие с элементом интерфейса требует повторного обращения к серверу с повторной загрузкой новой страницы. Из-за этого веб-приложение теряет свою элегантность и медленно работает. В данной статье я расскажу о том, как данную проблему можно решить с помощью JavaScript и объекта XMLHttpRequest.
Введение
Ajax начинает потихоньку матереть как технология, и в нем уже оформляются различные паттерны, подходы, школы (а с ними появляются и обязательные священные войны). В частности у нескольких людей уже (вот например заметка Фрэнка Соммерса, которая меня и сподвигла к написанию этой) я читал о том, что оформились два принципиально разных подхода к написанию ajax-приложений:
Поехали!
Сейчас подробно будет рассмотрен алгоритм проведения опроса и протокол взаимодействия клиента и сервера. Итак, после загрузки основной страницы, средствами JavaScript выполняется GET-запрос без параметров к серверу для получения исходных данных для проведения опроса. Сервер возвращает их в виде XML документа следующей структуры: