小码哥的IT人生

XML DOM getElementsByTagName() 方法

XML基础 2023-08-12 23:58:04小码哥的IT人生shichen

XML DOM getElementsByTagName() 方法

定义和用法

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

语法:

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

返回值

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

说明

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

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

例子

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

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

实例

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

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

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

输出:

Harry Potter
Everyday Italian
XQuery Kick Start
Learning XML

TIY

完整实例【getElementsByTagName() - 取得指定节点的值】:

<html>
<head>
<script type="text/javascript" src="/demo/example/xdom/loadxmldoc.js"></script>
</head>
<body>
<script type="text/javascript">
xmlDoc=loadXMLDoc("/demo/example/xdom/books.xml");
x=xmlDoc.getElementsByTagName("title")[0]
y=x.childNodes[0];
document.write(y.nodeValue);
</script>
</body>
</html>

可以使用本站在线JavaScript测试工具测试上述代码运行效果:http://www.phpcodeweb.com/runjs.html

版权所有 © 小码哥的IT人生
Copyright © phpcodeweb All Rights Reserved
ICP备案号:苏ICP备17019232号-2  

苏公网安备 32030202000762号

© 2021-2024