无法复制Xml as3

时间:2016-03-17 06:37:29

标签: xml actionscript-3 flash clone

我正在使用XML的as3项目。我将xml对象复制到其他(newxml = oldxml)时遇到问题,文本被复制但是如果我从oldxml中删除了一些节点它会自动删除复制变量(newxml)中的节点。

删除节点的代码:

for each( node in xmlold.links.slidelink.(@displaytext.toLowerCase().indexOf(this.searchbar.text.toLowerCase())<0))
{

var index = node.childIndex();



   delete xmlold.links.slidelink[index];
   }

    this.display.text=xmlnew.toString();

现在,当我显示文本时,如果“xmlnew”它会在删除文本之后给出输出,这是不需要的

Xml看起来像:

<outline xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <links>
    <slidelink slideid="_player" displaytext="Headd"    <slidelink slideid="5pnZ9Eziqq4" displaytext="Relationship" expand="true" type="slide"/>
    <slidelink slideid="vgVg68B" displaytext="Temperature Relationship" expand="true" type="slide"/>
    <slidelink slideid="_player" displaytext="Viscosity" expand="true" type="slide"/>
  </links>
</outline>

请检查问题您的帮助将非常感谢

2 个答案:

答案 0 :(得分:1)

复制XML结构的最佳方法是使用XML/copy(),这正是它的用途。

var newXML:XML = oldXML.copy();

答案 1 :(得分:0)

newxml=oldxml不会复制,它只是说&#34; newxml与oldxml&#34;相同。

您需要newxml = new XML (oldxml);

之类的内容

作为起点尝试:

var newxml : XML = new XML ( oldxml.toXMLString() );