Salut à tous.
voilà je développe une chtite page html-javascript qui va me chercher un rss (xml), le traite, et m'affiche les données dans un tableau.
jusque là aucun soucis, je me débrouille plus ou moins correctement.
seulement j'ai un problème avec la récup de certains éléments.
je m'explique:

voilà la tête du xml (extension .html je précise):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
<?xml version="1.0" encoding="iso-8859-1" ?>
<rss version="2.0">
<channel>
<title>title</title>
<link>lien</link>
<description>desc</description>
<language>fr-fr</language>
<copyright>Copyright 2007</copyright>
<webMaster>webmaster@site.com</webMaster>
<pubDate>Sat, 09 Feb 2008 19:43:43 +0100</pubDate><item>
   <title> title1</title>
   <link>lien1</link>
   </item><item>
   <title> title2</title>
   <link>lien2</link>
   </item><item>
   <title> title3</title>
   <link>lien3</link>
   </item><item>
   <title> title4</title>
   <link>lien4</link>
   </item><item>
   <title> title5</title>
   <link>lien5</link>
   </item><item>
   <title> title6</title>
   <link>lien6</link>
   </item><item>
   <title> title7</title>
   <link>lien7</link>
   </item></channel>
	</rss>
et voilà la partie de code javascript qui récupère les infos:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
function afficher(){
	document.getElementById("img").src = "./mktpow.gif";
	if (window.XMLHttpRequest){
		req = new XMLHttpRequest();     //  Firefox, Safari, ...
	} else {
		if (window.ActiveXObject){
			req = new ActiveXObject("Microsoft.XMLHTTP");   // Internet Explorer 
		} else {
			document.getElementById("status").innerHTML = "votre navigateur est tout pourri.";
		}
	}
 
	req.open('GET', './cat-6.html', true);
		var reponse;
		req.onreadystatechange  = function() {
			if(req.readyState  == 4) {
				if(req.status  == 200){
					reponse = req.responseText;
					var responseHTML = document.createElement("docXML");
					responseHTML.innerHTML = reponse;
					var listeItems = responseHTML.getElementsByTagName("item");
					for (var i = 0; i < listeItems.length; i++){
						//Traitement des titres
						var titreTab = listeItems.item(i).getElementsByTagName("title");	//on récupère le tableau des titres, de taille 1 (1 titre par item)
						var titreTmp = titreTab.item(0).firstChild.nodeValue;				//récup de la valeur du 1er (et seul) element du tableau
						var finTitre = titreTmp.length;
						var titre = titreTmp.substring(1, finTitre);						//le titre commence par un espace qu'on dégage
 
						//Traitement des liens
						var lienTab = listeItems.item(i).getElementsByTagName('link');		//taille du tableau:1 (1 lien par item)
						var lienTmp1 = lienTab.item(0);										//lienTmp1 existe.
						var lienTmp2 = lienTmp1.firstChild;									
						if (lienTmp2) {alert("ok");}
						else {alert("pasok");}
pour le titre, aucun problème, ça marche nickel.
au début j'ai donc appliqué exactement la meme methode pour la récup du lien.
seulement ça ne marchait pas.
j'ai donc fait ça étape par étape (1 variable par etape), et le chti test à la fin me renvoit "pasok", style y'a kedall dans les elements lien.

passablement enervé , j'ai revu mon fichier html/xml, et j'ai remplacé <link></link> par <plouf></plouf>.
et là, ben ça marche, le test renvoit "ok".

donc au niveau de la logique, je suis totalement largué :
pourquoi ça marche avec "plouf", et pas avec "link"???