Прототип и руководство по AJAX
Введение в AJAX
AJAX означает Aсинхронный JavaScript и XML. AJAX - это новый метод создания лучших, быстрых и интерактивных веб-приложений с помощью XML, HTML, CSS и Java Script.
Чтобы получить полное представление об AJAX, просмотрите наше простое руководство по AJAX .
Поддержка прототипов для AJAX
Инфраструктура прототипов позволяет вам обрабатывать вызовы Ajax очень простым и увлекательным способом, который также является безопасным (кросс-браузерный). Prototype также разумно работает с кодом JavaScript, возвращаемым с сервера, и предоставляет вспомогательные классы для опроса.
Функциональность Ajax содержится в глобальном объекте Ajax . Этот объект предоставляет все необходимые методы для простой обработки запросов и ответов AJAX.
Запрос AJAX
Фактические запросы выполняются путем создания экземпляров объекта Ajax.Request () .
new Ajax.Request('/some_url', { method:'get' });
Первый параметр - это URL-адрес запроса; второй - это хеш параметров. Параметр метода относится к используемому методу HTTP; метод по умолчанию - POST.
Обратные вызовы AJAX
Запросы Ajax по умолчанию являются асинхронными, что означает, что у вас должны быть обратные вызовы, которые будут обрабатывать данные из ответа. Методы обратного вызова передаются в хэше опций при выполнении запроса -
new Ajax.Request('/some_url', {
method:'get',
onSuccess: function(transport) {
var response = transport.responseText || "no response text";
alert("Success! \n\n" + response);
},
onFailure: function() { alert('Something went wrong...') }
});
Здесь в хеше передаются два обратных вызова -
- onSuccess
- onFailure
Любой из двух вышеуказанных вызовов вызывается соответственно в зависимости от статуса ответа. Первым параметром, переданным обоим, является собственный объект xmlHttpRequest, из которого вы можете использовать его свойства responseText и responseXML соответственно.
Вы можете указать оба обратных вызова, один или ни одного - решать вам. Другие доступные обратные вызовы:
- onUninitialized
- onLoading
- onLoaded
- onInteractive
- onComplete
- onException
Все они соответствуют определенному состоянию транспорта xmlHttpRequest , за исключением onException, которое срабатывает при возникновении исключения при отправке других обратных вызовов.
NOTE- Обратные вызовы onUninitialized, onLoading, onLoaded и onInteractive не реализуются последовательно всеми браузерами. В общем, их лучше избегать.
Прототип методов AJAX
Объект Ajax предоставляет все необходимые методы для простой обработки запросов и ответов AJAX. Вот полный список всех методов, связанных с AJAX.
NOTE - Убедитесь, что у вас установлена как минимум версия 1.6 prototype.js.
S.No. | Метод и описание |
---|---|
1. | Параметры Ajax Это не метод, но подробно описываются все основные параметры, общие для всех запрашивающих AJAX и обратных вызовов. |
2. | Ajax.PeriodicalUpdater () Периодически выполняет запрос AJAX и обновляет содержимое контейнера на основе текста ответа. |
3. | Ajax.Request () Инициирует и обрабатывает запрос AJAX. |
4. | Ajax.Responders () Репозиторий глобальных слушателей, уведомляемых о каждом шаге запросов AJAX на основе прототипов. |
5. | Ajax.Response () Объект, переданный как первый аргумент всех обратных вызовов запросов Ajax. |
6. | Ajax.Updater () Выполняет запрос AJAX и обновляет содержимое контейнера на основе текста ответа. |