Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

AJAX. Ошибка IE при работе с объектом req.responseXML

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Веб-программинг] >> AJAX. Ошибка IE при работе с объектом req.responseXML
Имя
Сообщение << Старые топики   Новые топики >>
AJAX. Ошибка IE при работе с объектом req.responseXML - 2009-12-17 20:34:14.646666   
mr_Anderson

Сообщений: 140
Оценки: 0
Присоединился: 2008-11-29 19:52:02.186666
Интернет Експлорер не понимает объект, полученый с помощю ActiveXObject, читающий XML-файл, находящийся на локальном компъютере.

var req = ActiveXObject('Microsoft.XMLHTTP'); //или ActiveXObject('Msxml2.XMLHTTP'), ну или XMLHttpRequest(), если не IE
req.open("GET", "file.xml", true);
req.send();
req.onreadystatechange = getxmlRoot;

function getxmlRoot(){if(req.readyState == 4){
xmlRoot = req.responseXML.documentElement; //Получается в Опере и Мозиле, но не в IE
//или, например:
xmlRoot = req.responseXML.getElementsByTagName('root')[0]; //Тоже получается в Опере и Мозиле, но не в IE
}}

В IE req.responseXML всётаки возвращает объект, но достучаться до его методов или свойств, как если бы это был обычный DOM-объект не получается. Мало того, попытка перебрать его с помощью for(in) приводит к ошибке - Такая, говорит, комманда, говорит, не потдерживается объектом.

Если XML-файл читать не с компьютера, а с сервера, то докапаться до нужных узлов полученого объекта получается, но практически вслепую, т.к. попытка перебрать его с помощью for(in)(что бы посмотреть, что в нём есть и чем можно пользоваться) в IE приводит всё к той же ошибке(такая комманда не потдерживается объектом).

Что же делать, как же быть?…[:-]
Post #: 1
Страниц:  [1]
Все форумы >> [Веб-программинг] >> AJAX. Ошибка IE при работе с объектом req.responseXML







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.