AS3:XML属性中的所有键+值

时间:2009-05-04 14:27:39

标签: xml actionscript-3 xml-attribute

<top>
    <item link="http://www.google.be"><![CDATA[test]]></item>
    <item link="http://www.google.be"><![CDATA[test]]></item>
    <item bold="true" link="http://www.google.be"><![CDATA[test]]></item>
</top>

我需要获取所有属性(键和值)

for each ( var item : XML in data.item )
{
     trace(item.attributes().name());
}

发出此错误

 TypeError: Error #1086: The name method only works on lists containing one item.

在第3项

2 个答案:

答案 0 :(得分:4)

它吹嘘第三项的原因是它有两个属性。您正在使用仅在只有一个属性时才获取名称的快捷方式。您需要将代码更改为以下内容:

for each (var item : XML in data.items)
{
    for each (var attr : XML in item.attributes())
    {
        trace(attr.name());
    }
}

编辑:姓名后的括号丢失。

答案 1 :(得分:1)

使用attr.valueOf()获取该属性的值

for each (var item : XML in data.items)
{
    for each (var attr : XML in item.attributes())
    {
        trace(attr.name()+":"+ attr.valueOf());
    }
}