За последние 24 часа нас посетил 18251 программист и 1606 роботов. Сейчас ищут 1553 программиста ...

состояние запроса AJAX

Тема в разделе "JavaScript и AJAX", создана пользователем _Егор_, 7 июл 2009.

  1. _Егор_

    _Егор_ Активный пользователь

    С нами с:
    22 янв 2009
    Сообщения:
    6
    Симпатии:
    0
    Добрый вечер. Есть простой код (пример из книжки) на чтение данных из файла и вывод текущего состояния запроса асинхронным методом.

    [js]var xmlHttp = greateXmlHttpRequestObject();
    function greateXmlHttpRequestObject(){
    var xmlHttp;
    try{
    xmlHttp=new XMLHttpRequest();
    }
    catch(e){ }
    if (!xmlHttp)
    alert ("error");
    else
    return xmlHttp;
    }
    function process(){
    if(xmlHttp){
    try{
    xmlHttp.open("GET", "async.txt" , true);
    xmlHttp.onreadystatechange = handleRequestStateChange();
    xmlHttp.send(null);
    }
    catch (e){
    alert("error");
    }
    }
    }
    function handleRequestStateChange(){
    mes=document.getElementById("message");
    if(xmlHttp.readyState==1){
    mes.innerHTML += "Состояние запроса:1(отправляется) <br>";
    }
    else if(xmlHttp.readyState==2){
    mes.innerHTML += "Состояние запроса:2(отправлен) <br>";
    }
    else if(xmlHttp.readyState==3){
    mes.innerHTML += "Состояние запроса:3(Идет обмен) <br>";
    }
    else if(xmlHttp.readyState==4){
    if (xmlHttp.status == 200){
    try{
    response=xmlHttp.responseText;
    mes.innerHTML += "Состояние запроса:4(Завершен) Сервер ответил <br>";
    mes.innerHTML +=response;
    }
    catch (e){
    alert ("error");
    }
    }
    else{
    alert ("error");
    }
    }
    }[/js]

    Когда запускаю у себя, выводится только первое состояние запроса. Далее молчок. Что в моззиле, что в опере.

    Отсюда вопрос: с чем это может быть связано и каким образом лечить?