XMLHttpRequest.onreadystatechange

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Um EventHandler é chamado sempre que o atributo readyState é modificado. O callback é chamado a partir da interface do usuário. A propriedade XMLHttpRequest.onreadystatechange contém o manipulador de eventos que é chamado quando o evento readystatechange é disparado, ou seja, toda vez que a propriedade readyState do XMLHttpRequest é modificada.

Aviso: Atenção: Isso não deve ser usado com solicitações síncronas e não deve ser usado como código nativo.

O evento readystatechange não será chamado quando a XMLHttpRequest request for cancelada pelo método abort().

Nota: Atualização: Está disparando na última versão de navegadores (Firefox 51.0.1, Opera 43.0.2442.991, Safari 10.0.3 (12602.4.8), Chrome 54.0.2840.71, Edge, IE11). Exemplo aqui - basta recarregar a página algumas vezes.

Sitaxe

XMLHttpRequest.onreadystatechange = callback;

Valores

  • callback é a função que será executada quando o readyState mudar.

Exemplo

js
var xhr = new XMLHttpRequest(),
  method = "GET",
  url = "https://developer.mozilla.org/";

xhr.open(method, url, true);
xhr.onreadystatechange = function () {
  if (xhr.readyState === XMLHttpRequest.DONE && xhr.status === 200) {
    console.log(xhr.responseText);
  }
};
xhr.send();

Especificações

Specification
XMLHttpRequest Standard
# event-xhr-readystatechange
XMLHttpRequest Standard
# handler-xhr-onreadystatechange

Compatibilidade com navegadores

BCD tables only load in the browser