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.

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().

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

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ção

Especificação Status Comentário
XMLHttpRequest Padrão em tempo real WHATWG living standard

Compatibilidade entre navegadores

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 1 1.0 (1.7 or earlier) 7[1] (Yes) 1.2
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? 1.0 (Yes) ? ? ?

[1] Internet Explorer versão 5 e 6 suportam chamadas ajax usando ActiveXObject().

Etiquetas do documento e colaboradores

Colaboradores desta página: brunoczim, gustavobeavis
Última atualização por: brunoczim,