Страницы: 1
У меня childNodes.length для указанного xml дает значение 5 smile Только это не баг.
А я и не говорил, что это баг :) Я назвал это лажей, причем не уточнил, чей именно :)
Мда... Парсер, конечно, маленько кривоват.
Угу. Кто ж спорит :) Я ж так, в порядке эксперимента его набросал.
Если ему мешают текстовые узлы в документе, их можно удалить из xml - вот так:
Проблема в том, что этот XML генерируется PHP-скриптом. Видать где-то я там вставил лишние символы.
Или исправить парсер, чтобы текстовые узлы ему не мешали. Вот так:
Cool! Помогло! Спасибо!
Граждане! Может кто сталкивался с такой лажей. В 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
Страницы: 1