繁体   English   中英

如何使Flex从XML数据创建一个元素数组?

[英]How do I make Flex create one-element arrays from XML data?

我通过HttpService在Flex中检索XML数据。 我在HttpService实例上将resultFormat属性设置为HTTPService.RESULT_FORMAT_OBJECT 结果包含类似于以下内容的数据:

<!-- ... -->
<children>
  <item><!-- ... --></item>
  <item><!-- ... --></item>
  <!-- ... -->
<children>
<!-- ... -->

当有多个同级item时,我在子元素下得到一个名为item的数组。 如果只有一个,则转换无法将其与标量区分开。

要让Flex将所有item元素转换为包含0个或多个元素的数组,我需要更改什么?

我要怎么做才能让一个数组成员children ,完全丢弃item包装器?

XML由服务器端的Struts生成。 我总是可以选择在那里更改文档的结构,但是现在我对Flex可以做什么感兴趣。

无论有一个条目还是多个条目, item对象都应该是一个XMLList (如果没有,则将是undefined 。)

如果只有一个元素,则可以在其上使用XML方法,但这只是为了方便。 请参阅XMLList文档

我还建议Mike Morearty在此博客条目上添加评论5(由于该网站似乎无法访问,因此为缓存版本)。

尝试这个:

try {
    for (var i:int = 0; /* loop forever till error is thrown */; i++) {
        var j:String = String( children.item[ i ].SomeOtherAttribute ); // if its a string
    }
} catch (re:RangeError) {
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM