--- title: XMLHttpRequest.onreadystatechange slug: Web/API/XMLHttpRequest/onreadystatechange translation_of: Web/API/XMLHttpRequest/onreadystatechange ---
Un EventHandler
que es invocado cada vez que cambia el atributo readyState
. La retrollamada (callback) es invocada desde el hilo (thread) perteneciente a la interfaz de usuario. La propiedad XMLHttpRequest.onreadystatechange
contiene el manejador del evento que es invocado cuando se dispara el evento {{event("readystatechange")}}, lo cual sucede cada vez que cambia el valor de la propiedad {{domxref("XMLHttpRequest.readyState", "readyState")}} de {{domxref("XMLHttpRequest")}}. La retrollamada (callback) es invocada desde el hilo perteneciente a la interfaz de usuario.
Aviso: No debería ser usado con peticiones síncronas ni tampoco en código nativo.
El evento readystatechange
no se disparará cuando una petición XMLHttpRequest
sea cancelada mediante el método abort().
XMLHttpRequest.onreadystatechange = callback;
callback
es la función de retrollamada que será ejecutada (invocada) cuando cambie el valor de la propiedad readyState
.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();
Specification | Status | Comment |
---|---|---|
{{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] Las versiones 5 y 6 admiten llamadas AJAX usando ActiveXObject()
.