Edwin Noorlande
Nieuwe gebruiker
- Lid geworden
- 8 jun 2010
- Berichten
- 3
Waarom gaat de code hieronder niet goed?
Ik verwacht dat de structuur van de xml file gewoon te zien zou zijn.
Wie kan me helpen?
default.xml
[XML]<?xml version="1.0" encoding="UTF-8"?>
<xml>
<domain>
<content></content>
<subdomain>
<content></content>
<subdomain>
<content></content>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
</map>
</subdomain>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
</map>
</subdomain>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
</map>
</map>
</domain>
</xml>
[/XML]
index.html
[JS]<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script language="javascript">
XMLfile = CreateAJAXObject();
XMLDoc = '';
XMLfile.onreadystatechange= view;
XMLfile.open("GET", './default.xml', true);
XMLfile.send(null);
function CreateAJAXObject(){
try{//Mozilla, Opera, and Safari
AJAXObj = new XMLHttpRequest(); }
catch (err){//Internet Explorer
try{ AJAXObj = new ActiveXObject("Msxml2.XMLHTTP"); }
catch (err){
try{ AJAXObj = new ActiveXObject("Microsoft.XMLHTTP"); }
catch (err){ alert("Your browser does not support AJAX!"); }
}
}
return AJAXObj;
}
function view(){
if (XMLfile.readyState == 4){
XMLDoc = XMLfile.responseXML;
index = readnode(XMLDoc.documentElement.firstElementChild);
document.getElementById('body').innerHTML = index;
}
}
function readnode(node){
nodename = node.tagName;
index = '<ul>';
index += '<li>'+nodename+'</li>';
if(node.children.length!=0){
for(x=0;x<node.children.length;++x){
index += readnode(node.children[x]);
}
}
index += '</ul>';
return index;
}
</script>
<title>test</title>
</head>
<body>
<div id="body"></div>
</body>
</html>
[/JS]
Ik verwacht dat de structuur van de xml file gewoon te zien zou zijn.
Wie kan me helpen?
default.xml
[XML]<?xml version="1.0" encoding="UTF-8"?>
<xml>
<domain>
<content></content>
<subdomain>
<content></content>
<subdomain>
<content></content>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
</map>
</subdomain>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
</map>
</subdomain>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
<map>
<page></page>
<page></page>
<page></page>
<page></page>
</map>
</map>
</domain>
</xml>
[/XML]
index.html
[JS]<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script language="javascript">
XMLfile = CreateAJAXObject();
XMLDoc = '';
XMLfile.onreadystatechange= view;
XMLfile.open("GET", './default.xml', true);
XMLfile.send(null);
function CreateAJAXObject(){
try{//Mozilla, Opera, and Safari
AJAXObj = new XMLHttpRequest(); }
catch (err){//Internet Explorer
try{ AJAXObj = new ActiveXObject("Msxml2.XMLHTTP"); }
catch (err){
try{ AJAXObj = new ActiveXObject("Microsoft.XMLHTTP"); }
catch (err){ alert("Your browser does not support AJAX!"); }
}
}
return AJAXObj;
}
function view(){
if (XMLfile.readyState == 4){
XMLDoc = XMLfile.responseXML;
index = readnode(XMLDoc.documentElement.firstElementChild);
document.getElementById('body').innerHTML = index;
}
}
function readnode(node){
nodename = node.tagName;
index = '<ul>';
index += '<li>'+nodename+'</li>';
if(node.children.length!=0){
for(x=0;x<node.children.length;++x){
index += readnode(node.children[x]);
}
}
index += '</ul>';
return index;
}
</script>
<title>test</title>
</head>
<body>
<div id="body"></div>
</body>
</html>
[/JS]