首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

在AS3中剔除一个XML节点

2012-11-23 
在AS3中删除一个XML节点如果我们在AS3中声明了一个XML片段,并且想在运行时删除其中的一个或多个节点,该怎

在AS3中删除一个XML节点

如果我们在AS3中声明了一个XML片段,并且想在运行时删除其中的一个或多个节点,该怎么做呢?答案是,使用Delete关键字。

比如有如下的XML片段:

<mx:XML id="someXML">          <root>              <child label="one"/>              <child label="two"/>              <child label="three"/>              <nodeToDelete label="four"/>              <child label="five"/>              <nodeToDelete label="six">                  <child label="seven"/>                  <child label="eight"/>              </nodeToDelete>              <child label="nine"/>          </root>      </mx:XML>  

?

如果我要删除其中的nodeToDelete这个节点,那么我就可以这样写:delete someXML.nodeToDelete。同样注意,使用Delete不止可以删除一个节点,也可以删除一组节点(这些节点应该包含在一个XMLList对象里面),比如我要删除所有的label是“two”的节点,可以这样写:delete someXML.child.(@label=='two')[0]。

<?xml version="1.0" encoding="utf-8"?><mx:Application name="XML_delete_test" xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" verticalAlign="middle" backgroundColor="white"><mx:Script><![CDATA[protected function btn1_clickHandler(evt:MouseEvent):void{delete someXML.nodeToDelete;txtArea.text=someXML.toXMLString();}protected function btn2_clickHandler(evt:MouseEvent):void{delete someXML.child.(@label == 'two')[0];txtArea.text=someXML.toXMLString();}]]></mx:Script><mx:XML id="someXML"><root><child label="one"/><child label="two"/><child label="three"/><nodeToDelete label="four"/><child label="five"/><nodeToDelete label="six"><child label="seven"/><child label="eight"/></nodeToDelete><child label="nine"/></root></mx:XML><mx:ApplicationControlBar dock="true"><mx:Button id="btn1" label="delete &lt;nodeToDelete&gt; nodes" click="btn1_clickHandler(event);"/><mx:Button id="btn2" label="delete &lt;child label='two'&gt; node" click="btn2_clickHandler(event);"/></mx:ApplicationControlBar><mx:TextArea id="txtArea" text="{someXML.toXMLString()}" width="300" height="200"/></mx:Application>

?

热点排行