XML DOM getElementsByTagName() 方法

Document 对象参考手册

定义和用法

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

语法:

  1. getElementsByTagName(name)
参数 描述
name 字符串值,规定需检索的标签名。值 "*" 匹配所有的标签。

返回值

文档树中具有指定标记的 Element 节点的只读数组(从技术上讲,是 NodeList 对象)。返回的元素节点的顺序就是它们在源文档中出现的顺序。

说明

该方法将返回一个 NodeList 对象(可以作为只读数组处理),该对象存放文档中具有指定标签名的所有 Element 节点,它们存放的顺序就是在源文档中出现的顺序。NodeList 对象是“活”的,即如果在文档中添加或删除了指定标签名的元素,它的内容会自动进行必要的更新。

注意,Element 接口定义了一个同名的方法,该方法只检索文档的子树。另外,HTMLDocument 接口定义了 getElementsByName() 方法,基于 name 属性的值(而不是标签名)检索元素。

例子

可以用下列代码检索并遍历 HTML 文档中的所有 <h1> 标记:

  1. var headings = document.getElementsByTagName("h1");
  2.  
  3. for (var i = 0; i < headings.length; i++) {
  4. var h = headings[i];
  5. }

实例

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

以下代码片段可显示 "books.xml" 中所有 <title> 元素的值:

  1. xmlDoc=loadXMLDoc("/example/xdom/books.xml");
  2.  
  3. var x=xmlDoc.getElementsByTagName('title');
  4. for (i=0;i<x.length;i++)
  5. {
  6. document.write(x[i].childNodes[0].nodeValue)
  7. document.write("<br />")
  8. }

输出:

  1. Harry Potter
  2. Everyday Italian
  3. XQuery Kick Start
  4. Learning XML

Document 对象参考手册