我想在fx | XML对象中搜索label='notifications'
的节点
在其中有一个label='notifications2'
的节点,我希望得到一个包含其中的内容的XML。
这是我的Flex 4代码:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" creationComplete="_ccInit()">
<!-- Launch your application by right clicking within this class and select Debug As > FDT SWF Application -->
<fx:Declarations>
<fx:XML id="moshe">
<node state="root_item" label="notifications">
<node state="root_item" label="notifications2">
<node state="item" label="item" a="test1" b="test2" />
</node>
<node state="root_item" label="Winnings" />
<node state="root_item" label="Winnings2" />
<node state="root_item" label="Winnings3" />
<node state="root_item" label="Winnings4" />
<node state="root_item" label="Winnings5" />
</node>
</fx:XML>
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.controls.Alert;
private function _ccInit():void {
var newXml:XML = moshe.(@label == "notifications").(@label == "notifications2") as XML;
Alert.show(newXml.toString());
}
]]>
</fx:Script>
</s:Application>
newXml为null。我该如何解决这个问题?
感谢
答案 0 :(得分:1)
您的搜索永远不会有效。您没有为moshe XML定义rootTag,并且您不能使用相同名称的根标记,“节点”和“元素”,即节点。您必须具有格式正确的XML。
在StackOverflow上搜索 Flex XML搜索将提供大量示例