Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   XML, XMLList, получение элемента. (http://www.flasher.ru/forum/showthread.php?t=147121)

maksimov 26.11.2010 15:37

XML, XMLList, получение элемента.
 
Код AS3:

var myData:XML = new XML('<all type="all"><singletag description="My Single Tag"/><others><other type="one"/><other type="two"/></others></all>');
trace("Тут всё отлично: " + myData.others);
trace("А тут всё плохо: " + myData.singletag);

В результате в трейс мне выводится следующее:
Тут всё отлично: <others>
<other type="one"/>
<other type="two"/>
</others>
А тут всё плохо:


То есть, получается, что я не получаю XMLList, если тег одиночный?
(если тег пустой - то он его автоматом схлопывает до одиночного("<tag atr='1'></tag>" => "<tag atr='1'/>")).


Как мне получить данный тег в виде XMLList'а, или XML'а? (я, наивный, думал, что второе я смогу получить таким образом: myData.singletag[0])

P.S.
Я конечно могу пробежать циклом по массиву, возращаемому функцией children(), но мне просто интересно, где я тут торможу в данном случае. :boredom:

Партизан 26.11.2010 16:10

Непонятно, что вы хотите получить...

Код AS3:

trace(myData.singletag.@description) //My Single Tag
                        trace(myData.others.other[0].@type) //one
                        trace(myData.others.other[1].@type) //two


Wolsh 26.11.2010 16:13

Цитата:

А тут всё плохо:
И что тут плохо? Было бы плохо, если бы трейс выдал значение, которого на самом деле НЕТ.

Код:

toString () метод 

AS3 function toString():String

Язык версии :  ActionScript 3.0
Версии среды выполнения:  1.0 9

Возвращает строковое представление всех объектов XML в объекте XMLList. Правила этого преобразования зависят от наличия простого или сложного содержимого в объекте XML:

Если объект XML имеет простое содержимое, toString() возвращает строковое содержимое объекта XML за исключением следующих компонентов: начального тега, атрибутов, объявлений пространства имен и конечного тега.
Если объект XML имеет сложное содержимое, toString() возвращает строку в формате XML, представляющую весь объект XML, включая начальный тег, атрибуты, объявления пространства имен и конечный тег.
Чтобы каждый раз возвращать весь объект XML, воспользуйтесь методом toXMLString().



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

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