我正在尝试创建一个 HTML 页面,它允许我以与您阅读它们的方式或多或少相同的方式输出 XML 文件中元素的所有节点名称,例如:
<a>
<b>
<c></c>
</b>
<d>
<e></e>
</d>
</a>
会输出:
a
b
c
d
e
我正在使用 Javascript 函数递归遍历 XML 文档来实现这一点。但是,我创建的函数只遍历到最低级别一次然后停止,产生,例如:
a
b
c
这是我的 Javascript 函数
function printChildren(node){
if(node.childNodes.length > 1){
y=xmlDoc.getElementsByTagName(node.nodeName)[0].childNodes;
for(i=0;i<y.length;i++){
if(y[i].nodeName!="#text"){
document.write("<br>--->" + y[i].nodeName);
alert(y[i].nodeName);
printChildren(y[i]);
};
};
};
};
我不确定我的方法是否错误,或者函数在完成第一级递归后是否刚刚中断。我正在 Mozilla Firefox 中对此进行测试,以防它是由于浏览器的一些怪癖。