XML DOM lastChild-eigenschap
Definitie en gebruik
De lastChild-eigenschap retourneert de laatste onderknoop van de geselecteerde knoop.
Als de geselecteerde knoop geen onderknoop heeft, retourneert deze eigenschap NULL.
Syntaxis:
elementNode.lastChild
Tips en opmerkingen
Opmerking:Internet Explorer negeert de lege tekstknooppunten die tussen knopen worden gegenereerd (bijvoorbeeld regeleindes), terwijl Mozilla dit niet doet. Daarom wordt in de volgende voorbeelden een functie gebruikt om het nodeType van de laatste onderknoop te detecteren.
Het nodeType van een elementknoop is 1, dus als de eerste onderknoop geen elementknoop is, wordt naar de volgende knoop verplaatst en wordt gecontroleerd of deze een elementknoop is. Dit proces gaat door tot de eerste onderknoop is gevonden. Deze methode zorgt ervoor dat correcte resultaten worden verkregen in zowel Internet Explorer als Mozilla.
Voor meer informatie over de verschillen tussen IE en Mozilla-browsers, bezoek de XML DOM-tutorial op CodeW3C.com DOM-browser in deze sectie.
voorbeeld
In alle voorbeelden gebruiken we de XML-bestand books.xmlen de JavaScript-functie loadXMLDoc().
De volgende codefragment haalt de laatste onderknoop op uit "books.xml":
//controleer of de laatste knoop een elementknoop is
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)
{
//Process only element nodes
document.write(lastNode.childNodes[i].nodeName);
document.write(" = ");
document.write(lastNode.childNodes[i].childNodes[0].nodeValue);
document.write("<br />");
}
}
The output of the above code:
title = Learning XML author = Erik T. Ray year = 2003 price = 39.95