Flex 访问目前xml节点的父节点
Flex 访问当前xml节点的父节点在Flex中,如果需要访问当前xml节点的父节点、?可以使用方法:xmoNode.parent()
Flex 访问当前xml节点的父节点
在Flex中,如果需要访问当前xml节点的父节点、
?
可以使用方法:xmoNode.parent() 就可以得到父节点.
?
官方文档如下:
?
? <mx:Application xmlns:mx="http://www.macromedia.com/2005/mxml" xmlns="*" creationComplete="doInit()">
? <mx:Script>
? <![CDATA[
??? private function doInit():Void{
????? getRssData("http://blog.eshangrao.com/rss.php",ta_view);
??? }
??? public function getRssData(url:String, outTxt:TextArea):Void
??? {
????? private var myXMLURL:URLRequest = new URLRequest(url);
????? private var myLoader:URLLoader = new URLLoader(myXMLURL);
????? myLoader.addEventListener("complete", xmlLoaded);
??? }
??? private function xmlLoaded(event:Event):Void{
????? ta_view.text='load ok';
????? var myLoader:URLLoader = URLLoader(event.target);
????? XML.ignoreProcessingInstructions=false;
????? var myXML:XML =new XML(myLoader.data);
????? private var outStr:String = "";
????? for each (var item:XML in myXML.children()) {
??????? if(item.localName()=='item'){
????????? outStr += "<p><b>" + item.children()0.toString() + ":</b></p><p>";
????????? outStr += item.children()6.toString() ;
????????? outStr += " <br/><a href='" + item.children()1.toString();
????????? outStr += "'><font color='#008000'>More...</font></a></p>";
??????? }
????? }
????? //ta_view.text=myXML.toString();
????? ta_view.htmlText = outStr;
??? }
? ]]>
? </mx:Script>
? <mx:Canvas width="100%" height="100%">
??? <mx:TextArea id="ta_view">
????? <mx:layoutConstraints>
??????? <mx:EdgeAnchor bottom="10" top="10" left="10" right="10"/>
????? </mx:layoutConstraints>
??? </mx:TextArea>
? </mx:Canvas>
</mx:Application>
运行示例(FlashPlayer8.5 required)
注意,我们没有直接使用节点名称访问节点(不知道为什么,如果使用item.title访问title节点的话,返回是空的,可能跟我的RSS XML的中rdf指令有关,如果有朋友知道解决的办法,请告诉我),而是使用了children()方法,该方法返回某一XML对象的所有子节点对象,
获取更多AS3中E4X类的使用信息,请查看Adobe在线文档,详细API参考:Adobe Flex?4 API文档
?
http://livedocs.adobe.com/flex/3/html/help.html?content=13_Working_with_XML_08.html