Hola. Estoy empezando a echarle un vistazo a esto del Ajax y m ha surgido un problema que procedo a detallar:
   Código PHP:
    function estadoPeticion() //Función que se llama cada vez que cambia el estado de peticion01.readyState.
{
    switch(peticion01.readyState) //Según el estado de la petición devolvemos un Texto.
    {
    case 0:
    document.getElementById('estado').innerHTML = "Sin iniciar";
    case 1:
    document.getElementById('estado').innerHTML = "Cargando";
    case 2:
    document.getElementById('estado').innerHTML = "Cargado";
    case 3:
    document.getElementById('estado').innerHTML = "Interactivo";
    case 4:
    document.getElementById('estado').innerHTML = "Completado";
    alert (peticion01.status);
    //Si ya hemos completado la petición, devolvemos además la información.
    document.getElementById('resultado').innerHTML = peticion01.responseText;
    }
}
    
 
function Coger(url) //Función coger, en esta caso le entra una dirección relativa al documento actual.
{
    if(peticion01) //Si tenemos el objeto peticion01
    {
    peticion01.open('GET', url, true); //Abrimos la url, true=forma asíncrona
    /*Asignamos la función que se llama cada vez que cambia el estado de peticion01.readyState
    Y LO HACEMOS ANTES THE HACER EL SEND porque inicia la transmisión.*/
    peticion01.onreadystatechange = estadoPeticion();
    peticion01.send(null); //No le enviamos datos a la pagina que abrimos.
    }
} 
    
  El caso es que llega a mostrarme en el campo 'estado' la palabra 'Completado'. Sin embargo en el campo resultado no muestra nada, y una cosa mas, al usar la propiedad 'status' o 'statusText' me da el error '0x80040111 (NS_ERROR_NOT_AVAILABLE)', como en este caso usandolo en un alert. 
Espero que puedan ayudarme, GRACIAS