如何删除XML节点?

时间:2012-04-16 08:19:13

标签: javascript xml pdf xpath xfa

我在开发Acrobat时遇到了一些麻烦。我在PDF中使用XML文件,我读写数据。我可以使用XPath在某些条件下搜索我想要的数据。但我无法删除节点。我已阅读Acrobat开发人员指南及其API。找到了一个方法但不是我需要的方法。让我们列出一个例子如下:

<?xml version="1.0" encoding="UTF-8"?>
<xfa:data xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/">    
      <mapData>
         <busline>
                <name>first</name>
                <stationList>
                     <station>
                         <name>f1</name>
                     <station>
                         <name>f2</name>
                </stationList>
           </busline>      
           <busline>
                <name>second</name>
                <stationList>
                     <station>
                         <name>s1</name>
                     <station>
                         <name>s2</name>
                </stationList>
          </busline>
    </mapData>
</xfa:data>

现在我要删除一个名为“second”的总线节点。我该如何删除它?我在API中找到了一个方法,如:

var root = XMLData.applyXPath(mapXML,"//mapData");  //mapXML is this XML file's XFAObject by parse method
var deleteNode = XMLData.applyXPath(mapXML,"//mapData/busline[name='first']");
root.remove(root.namedItem(deleteNode);    //it will delete all the busline nodes!!!

我也试过root.nodes.remove(deleteNode.nodes.item(0));仍然无效.......

我尝试了其他方法,但没有用,所以我来找你帮忙。

1 个答案:

答案 0 :(得分:0)

尝试此功能:

deleteItemAt