![]() |
|
||||||||||
|
|||||
|
Спасибо всем за ответы!
Проблему то я решил, но про XML ничего так и не понял.... Я немогу понять иерархию.... Никак немогу понять что тут ROOTNODE, что CHILDNODE,что firstChild, что nodeValue? |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
-- rootNode -- корневой узел (<root>)
-- childNode -- дочерний узел (дочерние узлы <root> -- <child> и <child2>. У них соотв. дочерние узлы Node и Node2) -- firstChild -- "первый ребенок" первый узел (В узле <root> это <child>, в узле <child> это текстовый узел Node -- nodeValue -- значение узла (у узла Node, значение Node) Последний раз редактировалось udaaff; 13.12.2007 в 20:17. |
|
|||||
|
Цитата:
Со строкой this.firstChild.childNode - оно выводит undefined..... мне в предыдущих постах дали строчку this.firstChild.firstChild.firstChild.childNodes[1].firstChild.nodeValue Оно то сработало, но я не пойму почему..... Почему 3 firstChild,почему childNodes[1], и почему после него еще один firstChild? Что из них к какому элементу обращается? |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
|
|
|||||
<?xml version="1.0" encoding="utf-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
<trackList>
<track>
<title>Movie (FLV)</title>
<urllink>http://www.my.com</urllink>
</track>
</trackList>
</playlist>
Результат примерно такая структура, в плане веток (хоть это и не код, но все же): playlist |_trackList ....|_track .......|_title .......|..|_Movie (FLV) .......|_urllink ..........|_http://www.my.com 1) забиваем на шапку <?xml version="1.0" encoding="utf-8"?> 2) this, в данном случае это и есть все дерево, объект класса XML(); 3) this.firstChild - то же самое, что и (2), но firstChild, говорит, что обращаемся к первому узлу (он тут едиственный, корневой) "playlist" 4) this.firstChild.firstChild - обращаемся к первому дочернему узлу, узла "playlist", (опять же единственному) "track" 5) this.firstChild.firstChild.firstChild - опять первый и единственный узел "track", отсюда и 3 firstChild-а 6) this.firstChild.firstChild.firstChild.childNodes[1] - childNodes - массив дочерних узлов, стоит "1", т.к. нужен второй эллемент (отсчет с нуля, естественно) 7)this.firstChild.firstChild.firstChild.childNodes[1].firstChild - как можно уже догадаться, узел единственный и первый, можно конечно везде firstChild заменить на childNodes[0], но нафик (достаточно веский аргумент )8) this.firstChild.firstChild.firstChild.childNodes[1].firstChild.nodeValue - nodeValue- используется для получения значения узла в виде строки, лучше его использовать для получения значения текстового узла (как в данном случае), ибо в противном случае это дело возвратит "null" надеюсь теперь понятно как работает эта строчка и что к чему обращается. P.S.: в данном случае лучше использовать атрибуты, а не тестовые узлы, нет здесь в текстовых узлах никакого смысла. |
|
|||||
|
ВАУ!!! Даже СУПЕР ВАУ!!! Во это ИМЕННО то в чем моя тупая голова нуждалась!
Пошел я осмысливать и пробовать. ОГРОМНОЕ СПАСИБИЩЕ amesquit !!! |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
amesqit, и так вы будете работать с каждым XML? Писать километровые обращения по нодам?
|
|
|||||
|
Чувствую себя туп-тупарём.....
XML: Flash file: var filik:XML = new XML();
filik.ignoreWhite = true;
filik.load("file.xml");
ts = this.firstChild.childNodes[0].firstChild.nodeValue;
trace(ts);
![]() Цитата:
Последний раз редактировалось etc; 16.12.2007 в 04:09. |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
|
|
|||||
|
А что без onLoad оно никак не работает?
|
![]() |
![]() |
Часовой пояс GMT +4, время: 01:23. |
|
|
« Предыдущая тема | Следующая тема » |
|
|