Полезная информация

Будьте в курсе последних изменений в мире Mozilla, следя за нашим микроблогом в Twitter.

Разработка » XMLHTTPRequest в IE и Mozilla » 16-11-2005 11:34:38

У меня childNodes.length для указанного xml дает значение 5 smile Только это не баг.

А я и не говорил, что это баг :) Я назвал это лажей, причем не уточнил, чей именно :)

Мда... Парсер, конечно, маленько кривоват.

Угу. Кто ж спорит :) Я ж так, в порядке эксперимента его набросал.

Если ему мешают текстовые узлы в документе, их можно удалить из xml - вот так:

Проблема в том, что этот XML генерируется PHP-скриптом. Видать где-то я там вставил лишние символы.

Или исправить парсер, чтобы текстовые узлы ему не мешали. Вот так:

Cool! Помогло! Спасибо!

Разработка » XMLHTTPRequest в IE и Mozilla » 15-11-2005 18:04:06

Граждане! Может кто сталкивался с такой лажей. В IE следующий XML:

Выделить код

Код:

<xml version="1.0" encoding="UTF-8" standalone="yes">
<events>
  <event>
    <descr>Test event 1</descr>
    <author>corvus</author>
  </event>
  <event>
    <descr>Test event 2</descr>
    <author>corvus</author>
  </event>
</events>
</xml>

при помощи XMLHttpRequest грузится нормально (т.е.

Выделить код

Код:

request.responseXML.documentElement.getElementsByTagName("events")[0].childNodes.length

дает значение 2, и в дальнейшем в цикле все нормально парсится). В FF же childNodes.length = 3 (!!!) и есессно парсинг обламывается. Вот кусок кода, который я использую:
[code]xmlDocDay = req_day.responseXML.documentElement;
alert(req_day.responseText); // чисто для отладки
d_rootobj=xmlDocDay.getElementsByTagName("events")[0];   
s = "<table width='100%' border=0>";
alert(d_rootobj.childNodes.length); // вот тут в IE - 2, а в FF - 3
for (i=0;i<d_rootobj.childNodes.length;i++)
{             
  c_event = d_rootobj.getElementsByTagNa

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]