Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Поиск по имени атрибута всех дочерних XML узлов (http://www.flasher.ru/forum/showthread.php?t=125987)

psyanim.as 06.06.2009 18:20

Поиск по имени атрибута всех дочерних XML узлов
 
Предположим есть XML
Код:

var xml:XML = <data>
  <node label="node1"/>
  <node label="node2"/>
  <node label="node3"/>
</data>

обратиться к узлу с заданным именем просто:

Код AS3:

trace(xml.node.(@label == "node2").toXMLString());


но если например структура более сложная:

Код:

var xml:XML = <data>
  <node label="node1">
    <node label="node_1_1"/>
    <node label="node_1_2"/>
  </node>
  <node label="node2"/>
  <node label="node3"/>
</data>

Ну и предположим количество вложений не ограничено. Есть ли возможность обратиться к узлу с уникальны именем, учитывая что он может быть где угодно, хоть в 101 поколении узлов, и то что мы знаем только label.

Kuruki 06.06.2009 19:09

Код AS3:

trace(xml..*.(hasOwnProperty("@label") && @label == "yourValue"));

Возвратит xmllist всех элементов со аттрибутом @label == "yourValue". А если элемент всего один, то хмллист автоматически может преобразоваться в хмл.


Часовой пояс GMT +4, время: 18:19.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.