--- title: XMLHttpRequest.onreadystatechange slug: Web/API/XMLHttpRequest/readystatechange_event tags: - AJAX - API - Evento - Manipulador de eventos - XHR - XMLHttpRequest translation_of: Web/API/XMLHttpRequest/onreadystatechange original_slug: Web/API/XMLHttpRequest/onreadystatechange ---
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 {{domxref("XMLHttpRequest.readyState", "readyState")}} do {{domxref("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.
XMLHttpRequest.onreadystatechange = callback;
callback
é a função que será executada quando o readyState mudar.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 | Status | Comentário |
---|---|---|
{{SpecName('XMLHttpRequest', '#handler-xhr-onreadystatechange')}} | {{Spec2('XMLHttpRequest')}} | WHATWG living standard |
{{CompatibilityTable}}
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | {{CompatChrome(1)}} | {{CompatGeckoDesktop(1.0)}} | {{CompatIe(7)}}[1] | {{CompatVersionUnknown}} | {{CompatSafari(1.2)}} |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{CompatUnknown}} | 1.0 | {{CompatVersionUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
[1] Internet Explorer versão 5 e 6 suportam chamadas ajax usando ActiveXObject()
.