1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
var file = "file.xml";
// methode perso pour ouvrir un xml, data etant le document xml
$.readXML(file, function(data){
var result = "";
result = read(null, data, 0, result);
document.write(result);
/**
* Permet de lire recursivement le fichier xml
* et l'affiche
* @param DomNode parent noeud qui possede des fils
* @param DomDocument file document XML
* @param Int spaces nombre d'espace indiquant le niveau
* @param String result Stocke les donnees a afficher
* @return String Retourne la chaine contenant les données
*/
function read(parent, file, spaces, result)
{
var xml = null;
if(parent == null)
xml = file;
else
xml = parent;
var children = xml.childNodes;
for(child in children)
{
var e = children[child];
if(e.nodeType == 1)
{
if(e.children.length > 0)
{
var nspaces = "";
for(var i = 0; i < spaces; i++)
nspaces += " ";
result += "<br/>" + nspaces + "- " + e.nodeName + ": ";
result = read(e, null, spaces + 1, result);
}
else
{
var nspaces = "";
for(var i = 0; i < spaces; i++)
nspaces += " ";
result += "<br/>" + nspaces + e.nodeName + ": " + e.firstChild.nodeValue;
}
}
}
return result;
}
}); |