PDA

Просмотр полной версии : XML, как вывести на экран nodeValue второго узла?


MINASTIS
14.06.2006, 10:58
ПОмогите с проблемой.
У меня есть xml файл. Вот что в нем:


<all>
<file name="MyIE2" version="0.9.27" link="http://minastis.narod.ru/NT/myie2.rar" razmer="1.77mb">
Первый нод
</file>
<file2 name="MyIE2" version="0.9.27" link="http://minastis.narod.ru/NT/myie2.rar" razmer="1.77mb">
Второй нод
</file2>
</all>


как мне с помощью trace вывести на экран nodeValue узла file2? Помогите! Первого выводит, а второго что-то не как! Или я неправильно путь к нему задаю. Как задать к нему путь?

Kinsler
14.06.2006, 11:26
myXML.firstChild.nextSibling.nextSibling;
так надо

MINASTIS
14.06.2006, 11:49
Не получается :( Undefind.
К узлу file я обращаюсь так чтобы вывести на экран значение текстового узла внутри:

var file_xml = files;
trace(file_xml.firstChild.firstChild.nextSibling.firstChild.nodeValue);
stop();


Мне выводит "Первый нод".
А как мне вывести на экран "Второй нод".
И как дальше если еще будут узлы file3 и file4 и т.д. выводить мне их значения? nextSibling' ами переводить на следующий?
Подскажите пожалуйста!

Kinsler
14.06.2006, 11:57
я что-то сам туплю
а так что?
file_xml.firstChild.firstChild.nextSibling.nextSibling.nodeValue;
?
а обходить ноды узла нужно в цикле который загоняет в массив например нужные тебе значения

etc
14.06.2006, 14:10
можно так
var node = file_xml.firstChild;
while (node) {
trace(node);
node = node.nextSibling;
}
А можно childNodes. Суть одна.

MINASTIS
14.06.2006, 17:34
Получилось в общем так:

file_xml = file_xml.firstChild.firstChild.nextSibling;
while (file_xml.firstChild.nodeValue != undefined) {
trace(file_xml.firstChild.nodeValue);
file_xml.nextSibling.nextSibling;


На экран выводиться:

"Первый нод

Второй нод"

Вот так вот. Спасибо что помогли! Очень признателен!!!

civhimik
14.06.2006, 18:59
для начала надо было бы во флеше написать
file_xml.ignoreWhite=true

MINASTIS
15.06.2006, 10:03
О вот как раз встречный вопрос.
civhimik а что изменяет это свойство? Я примерно знаю что-то типа пропуск пустых полей или что именно. И чем она удобна?

Kinsler
15.06.2006, 11:41
удаляет лишнии и совершенно ненужные пробелы
типа таких

<space>
<NonSpace> <--- space for ignore</NonSpace>
</space>