Bonjour,
j'essaie depuis plusieurs heures de simplement prendre un flux RSS tel que celui du journal LeDevoir disponible à cette adresse "ledevoir.com/rss/ledevoir.xml" et de traiter seulement 2 champs soit Title et Description. Et jusqu'à maintenant si je traite seulement la balise Title tout fonctionne bien. Mais dès que j'essaie de traiter les 2 balises XML qui m'intéressent, alors ma page XHTML n'affiche plus rien ! Voici mon code XHTML en question:
Test.xhtml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>LeDevoir</title>
<script language="JavaScript">
function chargeDocument(URI) {
try {
xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", URI,true);
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4) {
affiche(xmlhttp.responseXML);
}
}
xmlhttp.send(null);
} catch(o) {alert(o);}
}
function affiche(doc) {
elementol = document.createElement("ol");
var allitems = doc.getElementsByTagName("item");
for (var i=0; i < allitems.length; i++) {
var itemElm = allitems[i];
var titreElm = itemElm.getElementsByTagName("title").item(0);
var titleText = titleElm.firstChild.nodeValue;
var DescripElm = itemElm.getElementsByTagName("description").item(0);
var DescripText = DescripElm.firstChild.nodeValue;
elementli = document.createElement("li");
var txtNode = document.createTextNode(titleText);
elementli.appendChild(document.createTextNode(txtNode));
elementol.appendChild(elementli);
body = document.getElementsByTagName("body").item(0);
body.appendChild(elementol);
}
}
</script>
</head>
<body>
<ul>
<li><a href="javascript:chargeDocument('ledevoir.xml');">
Récupère et affiche le titre et la description.</a></li>
</ul>
</body>
</html>
Comme vous pouvez le voir, je ne cherche pas à faire quoi que ce soit de compliquer. Je veux simplement identifier la valeur de 2 balises pour chaque item et en afficher leur contenu respectif. Alors, toute aide serait vraiment appréciée!!
Configuration: Windows XP
Firefox 2.0.0.14