我正在尝试从flex应用程序中的命名空间xml文件中获取数据。有一个根命名空间(xmlns =“blah”)和另一个命名空间(xmlns:i =“blah”),我可以使用以下内容访问大多数标签:
var ns:Namespace = doc.namespace();
var result:XMLList = doc.ns::element;
但是,有几个标签可能会在应用程序中发生变化,我不想对它们进行硬编码,可能使用元素方法:
var result:XMLList = doc.elements(configuredField);
有没有办法使用elements方法获取带有命名空间的元素,或者使用参数以类似的方式在flex中获取XML元素?
答案 0 :(得分:1)
如果我了解您,您可以使用动态属性( [] 表示法)来获取节点。
var x:XML=
<root xmlns:i="testNS">
<elem1>
hhh
</elem1>
<i:elem2>
123123
</i:elem2>
</root>;
var elemName:String="elem2";
var ns:Namespace=x.namespace("i");
var tags:*=x.ns::[elemName]; //will contain all "elem2" tags in "i" namespace