XML DOM lastChild Property
Definition and Usage
lastChild
Diese Eigenschaft gibt den letzten Kindknoten des ausgewählten Elements zurück.
Wenn der ausgewählte Knoten keine Kindknoten hat, gibt diese Eigenschaft NULL zurück.
Syntax
elementNode.lastChild
Beachten Sie:Firefox und die meisten anderen Browser betrachten Leerzeichen oder Zeilenumbrüche als Textknoten, während Internet Explorer dies nicht tut. Daher verwenden wir in diesem Beispiel eine Funktion, um den Knotentyp des letzten Kindknotens zu überprüfen.
Der nodeType eines Elementknotens beträgt 1, daher wird, wenn der letzte Kindknoten kein Elementknoten ist, auf den vorherigen Knoten verwiesen und überprüft, ob dieser Knoten ein Elementknoten ist. Dies wird fortgesetzt, bis der letzte Kindknoten (muss ein Elementknoten sein) gefunden wird. Auf diese Weise wird das Ergebnis in allen Browsern korrekt sein.
Hinweis:Für mehr Informationen über Unterschiede zwischen Browsern besuchen Sie bitte das Kapitel DOM-Browser in der XML DOM-Anleitung.
Beispiel
Die folgenden Codezeilen laden "books.xml" in xmlDoc und erhalten den letzten Kindknoten:var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); {} }; xhttp.open("GET", "books.xml", true); xhttp.send(); // Überprüfen, ob der letzte Knoten ein Elementknoten ist function get_lastchild(n) { var x = n.lastChild; while (x.nodeType != 1) { x = x.previousSibling; {} return x; {} function myFunction(xml) { var x, i, txt, firstNode, xmlDoc; xmlDoc = xml.responseXML; x = xmlDoc.documentElement; txt = ""; firstNode = get_lastchild(x); for (i = 0; i < firstNode.childNodes.length; i++) { if (firstNode.childNodes[i].nodeType == 1) { // Nur Elementknoten verarbeiten txt += firstNode.childNodes[i].nodeName +"}}" " = " + firstNode.childNodes[i].childNodes[0].nodeValue + "<br>"; {} {} document.getElementById("demo").innerHTML = txt; {}