Когда запрос отправляется на сервер, нам необходимо выполнить некоторые задачи, основанные на ответе.
Всякий раз, когда ReadyState изменяется, запускается событие onreadystatechange.
Атрибут ReadyState хранит информацию о состоянии XMLHttpRequest.
Ниже приведены три важных свойства объекта XMLHttpRequest:
свойство | описывать |
---|---|
onreadystatechange | Сохраняет функцию (или имя функции), которая будет вызываться при каждом изменении свойства ReadyState. |
готовое состояние | Статус XMLHttpRequest существует. Изменяется от 0 до 4. 0: запрос не инициализирован 1: Соединение с сервером установлено. 2: Запрос получен 3: Запрос обрабатывается. 4: Запрос завершен, ответ готов. |
статус | 200: «ОК» 404: Страница не найдена |
В событии onreadystatechange мы указываем задачи, которые необходимо выполнить, когда ответ сервера будет готов к обработке.
Когда значение ReadyState равно 4, а статус равен 200, ответ готов:
Примечание. Событие onreadystatechange запускается 4 раза (0–4) соответственно: 0–1, 1–2, 2–3, 3–4, что соответствует каждому изменению ReadyState.
Функция обратного вызова — это функция, которая передается в качестве параметра другой функции.
Если на вашем сайте есть несколько задач AJAX, вам следует написать стандартную функцию для создания объекта XMLHttpRequest и вызывать эту функцию для каждой задачи AJAX.
Вызов функции должен содержать URL-адрес и задачу, которую необходимо выполнить при возникновении события onreadystatechange (которая может быть разной для каждого вызова):