XML DOM getElementsByTagNameNS() 方法

Document 对象参考手册

定义和用法

getElementsByTagNameNS() 方法可返回带有指定名称和命名空间的所有元素的一个节点列表。

语法:

  1. getElementsByTagNameNS(ns,name)
参数 描述
ns 字符串值,可规定需检索的命名空间名称。值 "" 可匹配所有的标签。
name 字符串值,可规定需检索的标签名。值 "" 可匹配所有的标签。

返回值

文档树中具有指定命名空间和本地名的 Element 节点的只读数组(从技术上讲,是 NodeList 对象)。

说明

该方法与 getElementsByTagName() 方法相似,只是它根据命名空间和名称来检索元素。只有使用命名空间的 XML 文档才会使用它。

实例

在所有的例子中,我们将使用 XML 文件 books.xml,以及 JavaScript 函数 loadXMLDoc()

以下代码片段可向每个 <book> 元素添加一个带有命名空间的元素节点:

  1. xmlDoc=loadXMLDoc("/example/xdom/books.xml");
  2.  
  3. var x=xmlDoc.getElementsByTagName('book');
  4. var newel,newtext;
  5.  
  6. for (i=0;i<x.length;i++)
  7. {
  8. newel=xmlDoc.createElementNS('p','edition');
  9. newtext=xmlDoc.createTextNode('First');
  10. newel.appendChild(newtext);
  11. x[i].appendChild(newel);
  12. }
  13.  
  14. //输出所有 title 和 edition
  15. var y=xmlDoc.getElementsByTagName("title");
  16. var z=xmlDoc.getElementsByTagNameNS("p","edition");
  17.  
  18. for (i=0;i<y.length;i++)
  19. {
  20. document.write(y[i].childNodes[0].nodeValue);
  21. document.write(" - ");
  22. document.write(z[i].childNodes[0].nodeValue);
  23. document.write(" edition");
  24. document.write("<br />");
  25. }

Document 对象参考手册