Ajax. Получение responceText в IE

SMiX

Новичок
Ajax. Получение responceText в IE

строка alert(req.responseText); Работает отлично в Firefox, но не работает в Осле. Скрипт, куда посылается запрос, просто выводит слово OK.
Если в Перед
Код:
alert(req.responseText);
написать
Код:
alert(req.readyState)
, браузер 4 раза будет алертить:
1, 2, 3, 4, но потом ничего не произойдет, тогда как Firefox выводит OK.
В чем может быть проблема?

-~{}~ 18.11.06 18:50:

Ну и сам скрипт...
Код:
function submitAddLink(){
	var submitUrl = "<?$SubmitUrl?>";
	alert(submitUrl);
    var tObj = document.getElementById("list");
    var req;
    if(window.XMLHttpRequest){
        req = new XMLHttpRequest();
        req.overrideMimeType('text/html');
    }
    else
        if(window.ActiveXObject)
            req = new ActiveXObject("Microsoft.XMLHTTP");

    if(req) {
        try {
            req.open('GET', submitUrl, true);

            req.onreadystatechange = function() {
                if(req.readyState == 4) {
                    alert(req.responseText);
                }
                else {

                }
            }
        }
        catch(err) {
          alert("123456"+err);
        }


    //    req.send("link="+encodeURI(document.getElementById("form").link.value));
         req.setRequestHeader('Accept-Charset', 'windows-1251');
         req.setRequestHeader('Accept-Language', 'en');
         req.send(null);
    }else{
    	alert('cat\'t create "req"');
    }
}
 

slach

Новичок
http://ru.wikipedia.org/wiki/XMLHttpRequest

и оттуда идем по ссылкам на API Mozilla и API reference для MSIE
ну и продебажте его еще раз

важно понять что такое onreadystatechange
и почему может не выводиться responseText

поставьте какой нибудь http sniffer посмотрите что отдает в сокет веб-сервер, в ответ на ваш запрос
 

SMiX

Новичок
Интересно... Запрос вообще не отправляется. Naviscope никак не реагирует. А req.readyState всеравно алертится. А чем можно дебагить яваскрипт в IE?
 

SMiX

Новичок
Проблема была в том, что сервер выдавал кодировку cp1251. Когда поменял на windows-1251 все заработало.
 

slach

Новичок
=) бывает, но первый совет был действительно правильный
надо смотреть заголовки и тело HTTP запросов и ответов =)
 

SMiX

Новичок
Так и сделал - сказали, что, возможно, проблема в серве. Я перенес на др. хостинг - там все работало. Ну я и сравнил заголовки на том и на своем сервах =)
 
Сверху