Apache flex 在E4X中处理名称空间

Apache flex 在E4X中处理名称空间,apache-flex,xml-namespaces,e4x,Apache Flex,Xml Namespaces,E4x,我正在尝试从flex应用程序中的一个名称空间xml文件中获取数据。有一个根命名空间(xmlns=“blah”)和另一个命名空间(xmlns:i=“blah”),我可以通过以下方式访问大多数标记: var ns:Namespace = doc.namespace(); var result:XMLList = doc.ns::element; 但是,应用程序中有几个标记可能会更改,我不想硬编码它们,可能使用elements方法: var result:XMLList = doc.elements

我正在尝试从flex应用程序中的一个名称空间xml文件中获取数据。有一个根命名空间(xmlns=“blah”)和另一个命名空间(xmlns:i=“blah”),我可以通过以下方式访问大多数标记:

var ns:Namespace = doc.namespace();
var result:XMLList = doc.ns::element;
但是,应用程序中有几个标记可能会更改,我不想硬编码它们,可能使用elements方法:

var result:XMLList = doc.elements(configuredField);

有没有一种方法可以使用elements方法获取具有名称空间的元素,或者类似的方法可以使用参数在flex中获取XML元素?

如果我理解您的意思,您可以使用动态属性([]表示法)获取节点

var x:XML=
啊
123123
;
var elemName:String=“elem2”;
var ns:Namespace=x.Namespace(“i”);
变量标记:*=x.ns::[elemName]//将包含“i”命名空间中的所有“elem2”标记
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