我正在尝试使用forEach循环操作来跟踪输出面板中的每个Artist名称,并且使用语法时遇到困难。我没有得到任何结果(甚至没有错误)。我已经加载了XML,并且能够追踪到孩子的直接路径,但希望它是动态的。
这是我的XML:
<library>
<artist title="DreamTheater">
<album title="A Dramatic Turn of Events" art="images/bg.jpg" soundtrack="audio/soundtrack.mp3">
<tracks>
<track>On the Backs of Angels</track>
</tracks>
</album>
</artist>
<artist title="Rush">
<album title="2112" art="">
<tracks>
<track>Something For Nothing</track>
</tracks>
</album>
</artist>
</library>
这是我的AS3功能:
function artistListLoad():void{
for each (var artist:XML in mainXML) {
trace(artist);
}
}
我是forEach循环的初学者,但还不理解,所以感谢评论!
答案 0 :(得分:2)
首先,如果要迭代XML中的mainXML.artist
节点,则需要用户artist
:
for each(var artist:XML in mainXML.artist)
从那里,您可以访问XML中每个artist
块内的子项,子属性和属性。快速样本:
function artistListLoad():void
{
for each(var artist:XML in mainXML.artist)
{
trace(artist.@title);
trace(artist.album.@title);
}
}
请注意,@
符号用于选择节点的属性,如果没有它,您将在节点中选择子节点。