Javascript Xmlhttprequest

Тема в разделе "Web 2.0, AJAX, Ruby, RSS технологии", создана пользователем Andrew Stephanoff, 30 сен 2005.

Статус темы:
Закрыта.
  1. Andrew Stephanoff

    Andrew Stephanoff Гость

    создал примитивный класс для загрузки XML но он работает только в IE, в Mozilla и Opera не работает.
    Может кто подскажет, почему?
    Код (Text):
    var XML = function() {

    var _xmlhttp;
    var _xml;
    var _process = function() {
     _xml = _xmlhttp.responseText;
    }

    if (window.XMLHttpRequest) {
     try {_xmlhttp = new XMLHttpRequest();}
     catch(e) {_xmlhttp = false;}
    } else if (window.ActiveXObject) {
     try {_xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");}
     catch(e) {
        try {_xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");}
       catch(e) {_xmlhttp = false;}
     }
    } else
     _xmlhttp = false;

    _xmlhttp.onreadystatechange = function() {
     if (_xmlhttp.readyState == 4 && _xmlhttp.status == 200)
       _process();
    }

    this.Load = function(sURL, sMethod, asyncFlag) {
     _xmlhttp.open(sMethod || "GET", sURL, asyncFlag || true);
    }
    this.GetText = function() {
     _process = function() {
       _xml = _xmlhttp.responseText;
     }
     _xmlhttp.send(null);
     return _xml;
    }
    this.GetXML = function() {
     _process = function() {
       _xml = _xmlhttp.responseXML;
     }
     _xmlhttp.send(null);
     return _xml;
    }
    }
    вызывается так:
    Код (Text):
    function Text_Click() {
     var xmlDoc = new XML();
     xmlDoc.Load("gallery.xml");
     alert(xmlDoc.GetText());
    }
     
  2. admin

    admin Well-Known Member

    Регистрация:
    8 авг 2003
    Сообщения:
    2.811
    Симпатии:
    0
    Для: Andrew Stephanoff
    ИМХО потому что в этих браузера об ActiveX не слышали разработчики
     
  3. Andrew Stephanoff

    Andrew Stephanoff Гость

    Код (Text):
    if (window.XMLHttpRequest) {
     try {_xmlhttp = new XMLHttpRequest();}
     catch(e) {_xmlhttp = false;}
    }
    вот это вызывает внутренний объект netscape и opera, так что дело не в этом (тем более, что когда работаю без класса просто процедурно, то все ок, вызывается)
     
  4. admin

    admin Well-Known Member

    Регистрация:
    8 авг 2003
    Сообщения:
    2.811
    Симпатии:
    0
    Для: Andrew Stephanoff
    помнишь я тебе кидал ссылку на developer.apple.com - посмотри её.
    там точно работает. проверено )
     
  5. Andrew Stephanoff

    Andrew Stephanoff Гость

    смотрел, так там просто работа с объектом XMLHttpRequest, оно у меня работает. Просто хочу сделать, чтобы через класс <_< а так оно не хочет собака :lol:
     
  6. neeoon

    neeoon Гость

    Добрый день.

    У меня подгружаються даные из пхп файла через явускрип (аякс), но возникла одна проблема, даные которые приходят от сервера (хтмл код) в какойто непонятной кодировке, причем в ИЕ пропадают несколько символов в хтмл-тегах, а в мозиле, нетскейпе и фаейрфоксе знаки вопроса, все нормально понимает только опера.

    Подскажите пожалуйста в чем проблема?
     
  7. ioni

    ioni Well-Known Member

    Регистрация:
    11 май 2006
    Сообщения:
    351
    Симпатии:
    0
    Посмотри вот здесь - и твой вопрос будет тебе отвечен ;)
    http://codeby.net/forum/threads/5584.html
     
  8. Гость

    А вот вопрос к спецам по Аякс. Я тут попробовал, потом долго-долго плевался. Это я - сам мир или и правда слишком много в нем еще кривовато? Вот тут описание моих приключений (если модераторы предпочитают - могу кросс-постнуть сюды, просто скажите): http://blogs.technet.com/eldar/default.aspx Аргументированные ответы хоть здесь, хоть там, были бы интересны.

    «Ее звали Аякс. Все что я слышал о ней, обещало чарующую волшебную ночь. Врали. Бессовестно врали. Все окончилось вечером разочарования...»
     
  9. Radion2

    Radion2 Member

    Регистрация:
    13 сен 2006
    Сообщения:
    23
    Симпатии:
    0
    а не проще ли так. функция для вчитывания файлов в переменную.

    Код (Text):
    <script type="text/javascript" language="javascript">
    // FileRead
    /*
    Mozilla 0.9.6, Linux (Debian).
    Mozilla 0.9.7, NT4.
    Mozilla 0.9.8, Linux (Red Hat 7.1).
    Mozilla 0.9.9, Win2000.
    Mozilla 0.9.9, NT4.
    Mozilla 0.9.9, Linux (Red Hat 7.2).
    Mozilla 1.0 RC1, FreeBSD.
    Netscape 6.1, NT4.
    Netscape 6.2.1, Win2000.
    Netscape 6.2.2, Win2000.
    Netscape 6.2.2, NT4.
    Netscape 6.2.2, Linux (Debian).
    Netscape 7 Win2000
    Netscape 8 Win2000
    Firefox 1.07 Win2000
    Firefox 1.5 Win2000
    Opera 8.51 Win2000
    Avant Browser 10 Win2000
    Internet Explorer 6.0 SP1 Win2000
    Internet Explorer 7.0 Windows Vista
    */


    function ReadFile(fileUrl) {
    var req;
    var fileContent;
    // branch for IE/Windows ActiveX version
    if (window.ActiveXObject) {
    req = new ActiveXObject("Microsoft.XMLHTTP");
    req.open("GET", fileUrl, false);
    req.onreadystatechange=function() {
    if (req.readyState == 4) {
    fileContent = req.responseText;
    }
    }
    req.send(null);
    // branch for native XMLHttpRequest object
    } else if (window.XMLHttpRequest) {
    req = new XMLHttpRequest();
    req.open("GET", fileUrl, false);
    req.send(null);
    fileContent = req.responseText;
    }
    return fileContent;
    }// FileRead End


    alert(ReadFile("abc.txt"));
    </script>
     
Загрузка...
Похожие Темы - Javascript Xmlhttprequest
  1. itincorp
    Ответов:
    0
    Просмотров:
    61
  2. itincorp
    Ответов:
    0
    Просмотров:
    72
  3. Aaleks111
    Ответов:
    2
    Просмотров:
    195
  4. SvetlanaL
    Ответов:
    0
    Просмотров:
    166
  5. SvetlanaL
    Ответов:
    0
    Просмотров:
    186
Статус темы:
Закрыта.

Поделиться этой страницей