11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous, je cherche à afficher des valeurs contenu dans un document XML (mondoc.xml) à partir d'un fichier html mais en utilisant la fonction javascript xmlhttp (pour l'instant je me cantonne à IE).

voici mon document XML:

mondoc.xml

<?xml version="1.0" encoding="UTF-8"?>

<TEST>
	bonjour


</TEST>


et voici ma page principale où j'aimerai obtenir le contenu de la balise test.


<HTML>

<HEAD>
</HEAD>

<BODY>
<SCRIPT language="Javascript">

	var XhrObj = new ActiveXObject("Microsoft.XMLHTTP") ;

	XhrObj.open("POST", "mondoc.xml");

	XhrObj.send();

	document.write(XhrObj.[b]responsexml.lastChild[/b]);
</SCRIPT>

</BODY>


</HTML>


Voilà, en fait, à la fin je sais afficher le contenu de mondoc.xml par un responsetext et cela fonctionne, j'obtiens à l'écran Bonjour mais ce que je souhaiterais c'est pouvoir traiter les valeurs en xml en utilisant responsexml.

Je vous remercie d'avance car j'ai retourné tout le web pour obtenir une réponse.

NICOLAS
Encore besoin d'un modo pour transporter ce post dans le salon javascript.
Merci à celui qui est de veille Smiley cligne
var r = xmlhttp.responseXML;
pour acceder a un element par son TAG XML :
tags = r.getElementsByTagName("nomdutag");
la on a recuperer tous les elements correspondants au tag
tags est donc un tableau JS
ensuite :
tag = tags[0] ;
ici c possible de mettre tout les traitements de tableaux usuels
et pour les attributs dudit tag :
tag.attributes.getNamedItem("nomattribut").value

je suppose que tag.value doit donner le contenu du tag si ya besoin ... mais je suis pas sur.
Cactusbone a écrit :

et pour les attributs dudit tag :
tag.attributes.getNamedItem("nomattribut").value


Préférer plutôt tag.getAttribute('nom_attribut')
La collection attributes fonctionne différemment selon les navigateurs et cela peut poser problème.

a écrit :

je suppose que tag.value doit donner le contenu du tag si ya besoin ... mais je suis pas sur.


Non.
On obtient la liste des nœuds enfants du nœud contenu dans la variable tag via la collection tag.childNodes

On peut récupérer tout le contenu textuel du nœud contenu dans la variable tag via: tag.textContent (DOM3 donc récent donc peu supporté. Supporté par Firefox, peut-être par Opera, à vérifier).
Modifié par Bobe (12 Jul 2005 - 16:41)
En parlant de compatibilité, ce bout de script paraît ne pas plaire à Mozilla, quelqu'un aurait il une idée ?



function getmessage()


		{

		document.getElementById('boite1').innerHTML=
tramexml.getElementsByTagName('emperor')[0].childNodes[0].firstChild.nodeValue 

document.getElementById('boite2').innerHTML=
tramexml.getElementsByTagName('emperor')[0].childNodes[1].firstChild.nodeValue 



statesI = eval(tramexml.getElementsByTagName('emperor')[0].childNodes[0].firstChild.nodeValue) ;

document.getElementById('boite3').innerHTML= statesI[0]; 

		}