codice:
file:file.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<azienda>
<nome>XML & Co.</nome>
<impiegati>
<donne>101</donne>
<uomini>191</uomini>
</impiegati>
<citta>Roma</citta>
</azienda>
file:script.js
//.....prima caricamento file.xml.....//
if (window.ActiveXObject){
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
}
else if (document.implementation && document.implementation.createDocument)
var xmlDoc= document.implementation.createDocument("","doc",null);
if (typeof xmlDoc!="undefined")
xmlDoc.load("file.xml");
//......fine caricamento file.xml.....//
var notWhitespace = /\S/
function scrivi(){
var msgobj=xmlDoc.getElementsByTagName("azienda")[0]
for (i=0;i<msgobj.childNodes.length;i++){
if ((msgobj.childNodes[i].nodeType == 3)&&(!notWhitespace.test(msgobj.childNodes[i].nodeValue))) {
msgobj.removeChild(msgobj.childNodes[i])
i--
}
}
document.body.innerHTML=
xmlDoc.getElementsByTagName("azienda")[0].childNodes[1].childNodes[1].firstChild.nodeValue
}
//....parte finale....//
if (typeof xmlDoc!="undefined"){
if (window.ActiveXObject)
scrivi()
else
xmlDoc.onload=scrivi
}
//...................//
La funzione scrivi() dovrebbe permettere che i nodi di tipo 3 (spazi bianchi tra i tag XML) vengano eliminati ed è valida solo per gli elementi di 2° livello (contenuti in <azienda>).
Come dovrei agire affinchè tutto sia valido anche per gli elementi di 3° livello?
Grazie!