小码哥的IT人生

XML DOM childNodes 属性

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

XML DOM childNodes 属性

定义和用法

childNodes 属性可返回 document 的子节点的 NodeList。

语法:

documentObject.childNodes

提示和注释:

提示:请使用 NodeList 的长度属性来测定节点列表中的节点数目。在您已知晓节点列表的长度后,就能够轻易地循环遍历此节点,并提取您需要的值!

实例

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

下面的代码片段可显示 XML 文档的子节点:

xmlDoc=loadXMLDoc("/example/xdom/books.xml");
var x=xmlDoc.childNodes;
for (i=0;i<x.length;i++)
  {
  document.write("Nodename: " + x[i].nodeName)
  document.write(" (nodetype: " + x[i].nodeType + ")<br />")
  }

IE 的输出:

Nodename: xml (nodetype: 7)
Nodename: #comment (nodetype: 8)
Nodename: #comment (nodetype: 8)
Nodename: bookstore (nodetype: 1)

Mozilla (Firefox) 的输出:

Nodename: #comment (nodetype: 8)
Nodename: #comment (nodetype: 8)
Nodename: bookstore (nodetype: 1)

TIY

完整实例【显示 XML 文档的子节点】:

<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");
var x=xmlDoc.childNodes;
for (i=0;i<x.length;i++)
{
document.write("Nodename: " + x[i].nodeName);
document.write(" (nodetype: " + x[i].nodeType + ")<br />");
}
</script>
</body>
</html>

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

完整实例【显示 XML 文档中所有元素的所有子节点】:

<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");
document.write("Nodename: " + xmlDoc.nodeName);
document.write(" (nodetype: " + xmlDoc.nodeType + ")<br />");
var x=xmlDoc.documentElement;
document.write("Nodename: " + x.nodeName);
document.write(" (nodetype: " + x.nodeType + ")<br />");
var y=x.childNodes;
for (i=0;i<y.length;i++)
{
document.write("Nodename: " + y[i].nodeName);
document.write(" (nodetype: " + y[i].nodeType + ")<br />");
for (z=0;z<y[i].childNodes.length;z++)
  {
  document.write("Nodename: " + y[i].childNodes[z].nodeName);
  document.write(" (nodetype: " + y[i].childNodes[z].nodeType + ")<br />");
  }
}
</script>
</body>
</html>

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

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

苏公网安备 32030202000762号

© 2021-2024