За последние 24 часа нас посетили 16803 программиста и 1608 роботов. Сейчас ищут 1358 программистов ...

AJAX запрос в IE 7 отрабатывает 1 раз

Тема в разделе "JavaScript и AJAX", создана пользователем Denis, 3 окт 2008.

  1. Denis

    Denis Активный пользователь

    С нами с:
    5 фев 2006
    Сообщения:
    92
    Симпатии:
    0
    Адрес:
    Украина, Одесса
    Есть такой JavaScript код:

    req глобальная переменная, которая содержит XMLHttpRequest

    [js]
    function DoLogin() {
    if (req.readyState == 4 || req.readyState == 0) {
    login = document.login_form.login.value;

    password = document.login_form.passwd.value;

    req.onreadystatechange = handleServerResponseDoLogin;
    req.open("GET", "index_test.php", true);
    req.send();
    } else {
    setTimeout('DoLogin()', 1000);
    }
    }

    function handleServerResponseDoLogin() {
    alert(req.readyState);
    if (req.readyState == 4)
    {
    if (req.status == 200)
    {
    }
    }
    }[/js]

    Почему-то в IE он отрабатывает 1 раз, то есть функция handleServerResponseDoLogin() отрабатыает 1 раз (в Opera, Mozilla всё работает как надо), чтобы отработала ещё надо перезагружать страничку, хотя в скрипт "index_test.php" запросы отправляются. Помогите =) пожайлуста. Спасибо
     
  2. Denis

    Denis Активный пользователь

    С нами с:
    5 фев 2006
    Сообщения:
    92
    Симпатии:
    0
    Адрес:
    Украина, Одесса
    onreadystatechange отрабатыает только 1 раз
     
  3. Denis

    Denis Активный пользователь

    С нами с:
    5 фев 2006
    Сообщения:
    92
    Симпатии:
    0
    Адрес:
    Украина, Одесса
    аааа черт возьми нашёл в чем ошибка =))), ппц я в шоке 3 дня сидел и кто бы мог подумать, надо было написать так:

    [js]req.open("GET", "index_test.php", true);
    req.onreadystatechange = handleServerResponseDoLogin;
    req.send();[/js]

    вместо

    [js]req.onreadystatechange = handleServerResponseDoLogin;
    req.open("GET", "index_test.php", true);
    req.send();[/js]
     
  4. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    Denis
    Рады были помочь :D