С помощью свойств и методов объекта XMLHttpRequest Вы можете совершать асинхронные запросы.
ТвитнутьС помощью свойств и методов объекта XMLHttpRequest Вы можете совершать AJAX запросы. Для того, чтобы совершить запрос сначала необходимо создать экземпляр объекта XMLHttpRequest.
Синтаксис для создания экземпляра объекта XMLHttpRequest:
переменная=new XMLHttpRequest();
Обратите внимание: IE6 использует ActiveXObject вместо XMLHttpRequest, поэтому синтаксис для создания экземпляра объекта для него будет отличатся от приведенного выше.
Синтаксис для создания экземпляра XMLHttpRequest в IE6:
переменная=new ActiveXObject("Microsoft.XMLHTTP");
Если Вы хотите, чтобы Ваш код работал во всех браузерах используйте следующую конструкцию:
var xhttp; /* Если объект XMLHttpRequest существует, значит мы имеем дело с современным браузером Chrome, Firefox, Safari, Opera или IE7 и выше. */ if (window.XMLHttpRequest){ xhttp=new XMLHttpRequest(); } /* Если же объект XMLHttpRequest не существует значит мы имеем дело с IE6 и нам придется воспользоваться специальным синтаксисом */ else { xhttp=new ActiveXObject("Microsoft.XMLHTTP"); }
Все свойства в таблице ниже будут подробно рассмотрены далее в этом учебнике.
Свойство | Описание |
---|---|
onreadystatechange | Функция, код которой будет исполнен при изменении состояния готовности сервера. |
readyState | Позволяет узнать состояние готовности сервера. |
responseText | Хранит ответ сервера как строку символов. |
responseXML | Хранит ответ сервера как XML файл. |
status | Хранит код ответа сервера. |
Все методы в таблице ниже будут подробно рассмотрены далее в этом учебнике.
Метод | Описание |
---|---|
open(тип_запроса,url,способ) | Создает запрос. тип_запроса устанавливает тип запроса (GET или POST). url устанавливает путь к запрашиваемому файлу. способ устанавливает способ выполнения запроса. При значении true запрос будет выполнен асинхронно, при false синхронно. |
send('данные') | Позволяет передать данные на сервер. |
setRequestHeader(заголовок,значение) | Позволяет добавить HTTP заголовок к запросу. заголовок содержит имя заголовка значение содержит значение заголовка |
Обратите внимание: при выполнении этого и следующих упражнений рекомендуем Вам выключить отладчики (такие как Firebug), которые могут выдавать подсказки. В ходе выполнения заданий Вы сами должны находить и исправлять ошибки в учебных целях.
Задание 1 определите 3 экземпляра объекта XMLHttpRequest с правильными именами для того, чтобы код заработал. Точные их имена неизвестны, но известен список из 15 имен, среди которых имеются необходимые.
Пример
<script type='text/javascript'> /* Определите экземпляры объектов здесь */ </script> <ul> <li>birch</li> <li>cat</li> <li>frog</li> <li>sky</li> <li>onion</li> <li>pine</li> <li>fox</li> <li>sun</li> <li>door</li> <li>forest</li> <li>creek</li> <li>pond</li> <li>rabbit</li> <li>apple</li> <li>moon</li> </ul>