J'utilise QML et XMLHttpRequest pour extraire des données XML.Analyser XML à partir de XMLHttpRequest
var doc = new XMLHttpRequest();
if (doc.readyState == XMLHttpRequest.DONE) {
var root = doc.responseXML.documentElement;
// Go through recenttracks children
var recentTracks = root.childNodes[1];
for (var i=0; i < recentTracks.childNodes.length; ++i)
{
var child = recentTracks.childNodes[i];
for (var j=0; j < child.childNodes.length; ++j)
{
if (child.childNodes[j].nodeName == "name")
{
console.log(child.childNodes[j].nodeValue); // [!]
}
}
}
}
J'analyse, par exemple, XML.
<track>
<artist mbid="293f35f8-3682-44bd-9471-13ca94fa9560">Tyler James</artist>
<name>Tried To Measure</name>
<streamable>0</streamable>
<album mbid="">It Took The Fire</album>
<url>http://www.last.fm/music/Tyler+James/_/Tried+To+Measure</url>
<image size="small">http://userserve-ak.last.fm/serve/34s/59408859.jpg</image>
</track>
Regardez maintenant le commentaire dans le code [!]
. Avant cette ligne, je vérifie si le nom du noeud actuel est "name" (regardez XML). Maintenant, je veux obtenir la valeur name
. J'ai écrit: child.childNodes[j].nodeValue
, mais il renvoie null tous les 10 fois (il y a 10 enfants). Qu'est-ce qui ne va pas?
Quelle langue est-ce? –