[AJAX] XML & nodeValue : erreur si noeud vide
Bonjour tout le monde,
Après des heures (réelles) de recherche je sollicite votre aide.
Comme le titre l'indique, j'ai des erreurs lorsque j'appelle un noeud vide.
La ligne 102 correspondant à :
Code:
var remix_title = tracks[t].getElementsByTagName("remix_title")[0].firstChild.nodeValue;
Si le noeud n'est pas vide ça fonctionne correctement.
Voici un exemple de XML utilisé :
Code:
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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| <?xml version="1.0" encoding="utf-8"?>
<playlists user="62" username="admin" >
<playlist user="62" id="1" active="0" name="Ma playlist 2" style="0" styleTitle="" created="1278337279" lastmod="1278337341" >
<item id="25" ref="6" style="16" styleTitle="" parent="" order="1" >
<image>kamui.jpg</image>
<artist>Kamui</artist>
<remixers></remixers>
<title>Thrill Kill (Asys Remix)</title>
<remix_title></remix_title>
<editor>Fe-Records</editor>
<timer>s</timer>
<link1></link1>
<link2></link2>
<link3></link3>
<link4></link4>
</item>
<item id="68" ref="20" style="18" styleTitle="" parent="" order="2" >
<image>mr_blink_gecko.jpg</image>
<artist>Mr Blink</artist>
<remixers></remixers>
<title>Gecko</title>
<remix_title></remix_title>
<editor>Fly Eye Records</editor>
<timer></timer>
<link1></link1>
<link2></link2>
<link3></link3>
<link4></link4>
</item>
<item id="31" ref="8" style="26" styleTitle="" parent="" order="3" >
<image>Noisecontrollers_yellow_minute.jpg</image>
<artist>Noisecontrollers</artist>
<remixers></remixers>
<title>Revolution is here (original mix)</title>
<remix_title></remix_title>
<editor>Fusion records</editor>
<timer></timer>
<link1></link1>
<link2></link2>
<link3></link3>
<link4></link4>
</item>
<item id="65" ref="18" style="18" styleTitle="" parent="" order="4" >
<image>deadmau5_some_chords.jpg</image>
<artist>Deadmau5</artist>
<remixers></remixers>
<title>Some Chords (Original mix)</title>
<remix_title></remix_title>
<editor>mau5trap</editor>
<timer>7:27</timer>
<link1></link1>
<link2></link2>
<link3></link3>
<link4></link4>
</item>
</playlist> |
En mettant simplement un espace, ça fonctionnerait, mais l'idée ne me plait guère et je tiens également à conserver les noeuds visibles, même si ceux-ci sont vides.
Je me dis qu'il doit bien y avoir une astuce pour que ça fonctionne, un test ou autre au niveau du javascript. J'avais pensé à 'length' mais comme le noeud est toujours là, même vide, le résultat est toujours 1 ...
J'espère que vous allez pouvoir m'aiguiller. Merci déjà. Bonne journée.