XML DOM firstChild-Attribut

Definition und Verwendung

Das firstChild-Attribut gibt den ersten Kindknoten des ausgewählten Knotens zurück.

Wenn der ausgewählte Knoten keine Kindknoten hat, gibt diese Eigenschaft NULL zurück.

Syntax:

elementNode.firstChild

Hinweise und Anmerkungen

Anmerkung:Internet Explorer ignoriert Leerheitens knoten zwischen Knoten (z.B. Zeilenumbrüche), während Mozilla dies nicht tut. Daher wird in den folgenden Beispielen eine Funktion verwendet, um den Knotentyp des ersten Kindknotens zu überprüfen.

Der Knotentyp des Elementknotens ist 1, daher wird, wenn der erste Kindknoten kein Elementknoten ist, zum nächsten Knoten gesprungen und überprüft, ob dieser Knoten ein Elementknoten ist. Dieser Prozess wird fortgesetzt, bis der erste Kindknoten gefunden ist. Diese Methode stellt sicher, dass sowohl in Internet Explorer als auch in Mozilla korrekte Ergebnisse erhalten werden.

Für mehr Informationen über die Unterschiede zwischen IE und Mozilla-Browser besuchen Sie bitte das XML DOM-Tutorial auf CodeW3C.com DOM-Browser diesem Abschnitt.

Beispiel

In allen Beispielen verwenden wir die XML-Datei books.xml, sowie der JavaScript-Funktion loadXMLDoc().

Der folgende Codeabschnitt liest den ersten Kindknoten aus "books.xml":

//prüfen, ob der erste Knoten ein Elementknoten ist
function get_firstchild(n)
{
var x=n.firstChild;
while (x.nodeType!=1)
  {
  x=x.nextSibling;
  }
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.documentElement;
var firstNode=get_firstchild(x);
for (var i=0;i<firstNode.childNodes.length;i++)
{ 
  if (firstNode.childNodes[i].nodeType==1)
  { 
  //Bearbeiten nur Elementknoten
  document.write(firstNode.childNodes[i].nodeName);
  document.write(" = ");
  document.write(firstNode.childNodes[i].childNodes[0].nodeValue);
  document.write("<br />");
  } 
}

Die Ausgabe des obigen Codes:

titel = Everyday Italian
autor = Giada De Laurentiis
jahr = 2005
preis = 30.00