Search code examples
xmlflashactionscript-3actionscriptchildren

how do I find the number of xml children in AS3


so live docs says this for calling .lenght() on an XML object

For XML objects, this method always returns the integer 1. The length() method of the XMLList class returns a value of 1 for an XMLList object that contains only one value.

i called it on an xml that looked like this:

<xml>
<picture>1</picture>
<picture>2</picture>
</xml>

i tried myXML.lenght() and it reallt returned 1. how do i get the number of children in my xml?


Solution

  • Try

    var length:int = myXML.children().length();
    

    Also, this is the method I use to make sure the children are really Elements, and not just Text Nodes.

        public static function getNumberChildElements(node:XML):int{
            var count:int = 0;
            for (var i:int=0; i<node.children().length(); i++){
                if (node.children()[i].nodeKind() == "element")
                    count++;
            }
            return count;
        }