Newsgroup: it.comp.lang.javascript
Titolo: xml e javascript: non mi funziona

ciao ho un probl con xml:
devo costruire una pagina che modifichi il valore di un livello
prendendo l'html da inserire da un file xml.
ho cercato in internet aiuto, ho trovato alcuni tutorial, li ho seguiti
e ho scritto i tre files, ma le cose non vanno come dovrebbero
(sigh)
vi riporto sotto i tre files in quest ordine: xml, javascript, html
Spero che possiate aiutarmi, grazie mille. Tarnesh
ps: i tre files si chiamano (nell'ordine)
xmlschema.xml ; esempiojavascript.js ; pagina.html
:xml:
<?xml version="1.0" encoding="iso-8859-1"?>
<sito>
<home>
<testo><b> ciao a tutti </b>
</testo>
<img>
</img>
</home>
<prodotti>
<prodotto>
<nome>
</nome>
<testo>
</testo>
<img>
</img>
<specifiche>
</specifiche>
</prodotto>
</prodotti>
<fornitori>
<fornitore>
<nome>
</nome>
<testo>
</testo>
<img>
</img>
<dida>
</dida>
</fornitore>
</fornitori>
<cio>
<testo>
</testo>
<img>
</img>
<dida>
</dida>
</cio>
<contattaci>
<testo>
</testo>
<img>
</img>
<specifiche> qui il form
</specifiche>
<dida>
</dida>
</contattaci>
<mailing>
<utente>
<nome>
</nome>
<indirizzo>
</indirizzo>
</utente>
</mailing>
<novita>
<nuovo>
<testo>
</testo>
</nuovo>
</novita>
</sito>
:fine xml:
: java script:
// JavaScript Document
//da utilizzare con onload
alert("ciaoMdo");
function apertura()
{
xml = new ActiveXObject("Microsoft.XMLDOM");
xml.onreadystatechange = IEGo;
xml.load(xmlfile);
}
function IEGo()
{
if (xml.readyState == 4);
}
//fine parte da usare con onload
function dati(testo, immagini)
{
this.testo=testo;
this.immagini=immagini;
}
function getvalue(oggetto, tag)
{
return oggetto.getElementsByTagName(tag)[0].ChildNodes[0].nodeValue;
}
function perhome()
{ 
nodohome=xml.getElementsByTagName("home")[0];
listahome=new dati(getvalue(nodohome,"testo"),getvalue(nodohome,"img"));
//i dati della home si trovano nell oggetto listahome
document.getElementById("Liv1").innerHtml=listahome.testo;
}
:fine javasript:
:html:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Documento senza titolo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript"
src="esempiojavascript.js">
</script>
</head>
<body onLoad="apertura()">
<div id="Liv1" style="position:absolute; width:200px; height:115px;
z-index:1; left: 251px; top: 256px;"></div>
<div id="Liv2" onMouseOver="perhome()" style="position:absolute;
width:200px; height:61px; z-index:2; left: 133px; top:
24px;">passaquiper
modificare liv1</div>
</body>
</html>
:fine html:
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Cambia il codice js con questo...
// JavaScript Document
xmlfile="xmlschema.xml"
function apertura()
{
 xml = new ActiveXObject("Microsoft.XMLDOM");//dichiaro l'oggetto XML
 xml.onreadystatechange = IEGo;
 xml.load(xmlfile);
}
function IEGo()
{
 if (xml.readyState == 4);
}
function dati(testo, immagini)
{
 this.testo=testo.nodeValue;
 this.immagini=immagini;
}
function getvalue(oggetto, tag)
{
 return oggetto.getElementsByTagName(tag)[0].childNodes[0];
}
function perhome()
{ 
 nodohome=xml.getElementsByTagName("home")[0];
 listahome=new dati( getvalue(nodohome,"testo"), getvalue(nodohome,"img") );
 listahome2=getvalue(nodohome,"testo");
 document.getElementById("Liv1").innerHTML=listahome.testo;
}