Propriété lastChild du XML DOM
Définition et utilisation
La propriété lastChild retourne le dernier enfant du nœud sélectionné.
Si le nœud sélectionné n'a pas d'enfants, cette propriété retourne NULL.
Syntaxe :
elementNode.lastChild
Avis et commentaires
Remarque :Internet Explorer ignore les nœuds de texte blanc générés entre les nœuds (comme les caractères d'retorno de ligne), tandis que Mozilla ne le fait pas. Par conséquent, dans les exemples suivants, nous utilisons une fonction pour détecter le type de nœud du dernier enfant.
Le type de nœud de l'élément est 1, donc si le premier enfant n'est pas un nœud élément, il est déplacé au prochain nœud et il est vérifié si ce nœud est un nœud élément. Ce processus continue jusqu'à ce que le premier enfant soit trouvé. Cette méthode garantit que les résultats sont corrects dans Internet Explorer et Mozilla.
Pour plus d'informations sur les différences entre IE et les navigateurs Mozilla, veuillez consulter le tutoriel XML DOM sur CodeW3C.com Navigateur DOM dans cette section.
Exemple
Dans tous les exemples, nous utiliserons le fichier XML books.xmlet la fonction JavaScript loadXMLDoc()。
Le fragment de code suivant extrait le dernier enfant de "books.xml":
//vérifier si le dernier nœud est un nœud élément
function get_lastchild(n)
{
var x=n.lastChild
;
while (x.nodeType!=1)
{
x=x.previousSibling;
}
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.documentElement;
var lastNode=get_lastchild(x);
for (var i=0;i<lastNode.childNodes.length;i++)
{
if (lastNode.childNodes[i].nodeType==1)
{
//Traiter uniquement les noeuds élément
document.write(lastNode.childNodes[i].nodeName);
document.write(" = ");
document.write(lastNode.childNodes[i].childNodes[0].nodeValue);
document.write("<br />");
}
}
La sortie du code ci-dessus :
title = Learning XML author = Erik T. Ray year = 2003 price = 39.95