1
<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 项

4

2 回答 2

4

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

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

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

于 2009-05-04T14:46:25.807 回答
1

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

for each (var item : XML in data.items)
{
    for each (var attr : XML in item.attributes())
    {
        trace(attr.name()+":"+ attr.valueOf());
    }
}
于 2012-02-03T13:54:22.450 回答