Показать сообщение отдельно
Старый 02.11.2006, 21:05
MerlinTwi вне форума Посмотреть профиль Отправить личное сообщение для MerlinTwi Посетить домашнюю страницу MerlinTwi Найти все сообщения от MerlinTwi
  № 96  
Ответить с цитированием
MerlinTwi
 
Аватар для MerlinTwi

Регистрация: Oct 2003
Адрес: Москва
Сообщений: 328
По умолчанию 90. Операторы (.) и (..) для XML

Для доступа к вложенным объектам (детям) в XML вы можете использовать оператор точка (.) (XML dot operator). Пример:
Код:
var myXML:XML = 
    <foo>
        <bar />
        <bar />
        <bar />
    </foo>;
    
trace(myXML.bar.toXMLString());
Результат:
Код:
<bar/>
<bar/>
<bar/>
Это аналогично использованию метода elements (XML.elements()).
Код:
trace(myXML.elements("bar").toXMLString());
Однако, есть еще похожий оператор две точки (..) (descendant accessor operator). Который работает аналогично, но возвращает и объекты более глубокого уровня вложенности. Пример:
Код:
var myXML:XML = 
    <note>
        <replying-to>
            <note>
                <author>Julie</author>
                <title>Reminder</title>
                <body>Take out the trash</body>
            </note>
        </replying-to>
        <author>Kevin</author>
        <title>Re: Reminder</title>
        <body>I will.</body>
    </note>;
    
trace("Children:");
trace(myXML.author.toXMLString());
trace("Decendants:");
trace(myXML..author.toXMLString());
Результат:
Код:
Children:
<author>Kevin</author>
Decendants:
<author>Julie</author>
<author>Kevin</author>
Есть и специальный метод, который выполняет ту же задачу decendants (XML.descendants()).
Код:
 trace(myXML.descendants("author").toXMLString());
__________________
Создатель: Бойцовский клуб | TimeZero | Sky2Fly
Я возьму сам.