--- title: XMLHttpRequest.onreadystatechange slug: Web/API/XMLHttpRequest/readystatechange_event translation_of: Web/API/XMLHttpRequest/onreadystatechange original_slug: Web/API/XMLHttpRequest/onreadystatechange ---
{{APIRef}}

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

Sintaxis

XMLHttpRequest.onreadystatechange = callback;

Valores

Ejemplo

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

Especificaciones

Specification Status Comment
{{SpecName('XMLHttpRequest', '#handler-xhr-onreadystatechange')}} {{Spec2('XMLHttpRequest')}} WHATWG living standard

Compatibilidad con navegadores Web

{{Compat("api.XMLHttpRequest.readystatechange_event")}}