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