0
我试图用另一个XML文档中的节点替换一个XML文档中的节点。我收到以下错误:正确使用MSXML replaceChild
Insert position node must be a Child of the node to insert under.
这是我的XML的简化版本: XMLDOC1
<pages>
<page id="1">
<content>First Document</content>
</page>
</pages>
其它XML文档在结构上完全一样: XMLDOC2
<pages>
<page id="1">
<content>Second Document</content>
</page>
</pages>
我需要用第二个文档的页面节点替换第一个文档的页面节点。我的尝试如下所示:
firstNode = xmlDoc1.selectSingleNode("//page[@id=1]")
secondNode = xmlDoc2.selectSingleNode("//page[@id=1]")
xmlDoc1.replaceChild(firstNode, oldNode)
谢谢。
解
firstNode.parentNode.replaceChild(xmlDoc1.importNode(secondNode, true), firstNode)
是的,有一个错字。我更新了我的代码,并且完美地工作(请参阅更新后的问题)。感谢您澄清importNode位;我注意到其他地方,但不知道为什么。 – scader