XML DOM 教程
1. XML DOM 教程 2. XML DOM 简介 3. XML DOM – 节点 4. XML DOM – 节点树 5. XML DOM 解析器 6. XML DOM 加载函数 7. XML DOM 方法 8. XML DOM 访问节点 9. XML DOM 节点信息 10. XML DOM – 节点列表和命名节点图 11. XML DOM – 遍历节点树 12. XML DOM 浏览器差异 13. XML DOM – 导航节点 14. XML DOM – 获取节点值 15. XML DOM – 改变节点值 16. XML DOM – 删除节点 17. XML DOM – 替换节点 18. XML DOM – 创建节点 19. XML DOM – 添加节点 20. XML DOM – 克隆节点 21. XML DOM – HttpRequest 对象 22. XML DOM – 节点类型 23. XML DOM – Node 对象 24. XML DOM – NodeList 对象 25. XML DOM – NamedNodeMap 对象 26. XML DOM – Document 对象 27. XML DOM – DocumentImplementation 对象 28. XML DOM – DocumentType 对象 29. XML DOM – ProcessingInstruction 对象 30. XML DOM – Element 对象 31. XML DOM – Attr 对象 32. XML DOM – Text 对象 33. XML DOM – CDATASection 对象 34. XML DOM – Comment 对象 35. XML DOM Parse Error 对象 36. XML DOM 解析器错误 37. XML DOM 总结 38. XML DOM 实例 39. XML DOM – 验证 XML

XML DOM – 克隆节点

XML DOM 克隆节点


55面试教程网 - 实例

下面的实例使用 XML 文件 books.xml
函数 loadXMLDoc(),位于外部 JavaScript 中,用于加载 XML 文件。

复制一个节点,并把它追加到已有的节点
本例使用 cloneNode() 来复制一个节点,并把它追加到 XML 文档的根节点。


复制节点

cloneNode() 方法创建指定节点的副本。

cloneNode() 方法有一个参数(true 或 false)。该参数指示被克隆的节点是否包括原节点的所有属性和子节点。

下面的代码片段复制第一个 <book> 节点,并把它追加到文档的根节点:

实例

xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book')[0]; cloneNode=x.cloneNode(true); xmlDoc.documentElement.appendChild(cloneNode); // 输出所有 title 节点文本值 y=xmlDoc.getElementsByTagName("title"); for (i=0;i<y.length;i++) { document.write(y[i].childNodes[0].nodeValue); document.write("<br>"); }

输出:

Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML
Everyday Italian

55面试教程网 »

实例解释:

  1. 使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
  2. 获取要复制的节点
  3. 使用 cloneNode 方法把节点复制到 "newNode" 中
  4. 向 XML 文档的根节点追加新的节点
  5. 输出文档中所有 book 的所有 title