XML DOM firstChild-eigenschap

Definitie en gebruik

De firstChild-eigenschap retourneert de eerste zoonknoop van de geselecteerde knoop.

Als de geselecteerde knoop geen zoonknopen heeft, retourneert deze eigenschap NULL.

Syntaxis:

elementNode.firstChild

Tips en opmerkingen

Opmerking:Internet Explorer negeert lege tekstknopen tussen knopen (bijvoorbeeld entertekens), terwijl Mozilla dit niet doet. Daarom gebruiken we in de volgende voorbeelden een functie om het node-type van de eerste zoonknoop te controleren.

De node-type van elementknopen is 1, dus als de eerste zoonknoop geen elementknoop is, wordt verplaatst naar de volgende knoop en wordt gecontroleerd of deze een elementknoop is. Dit proces wordt voortgezet tot de eerste zoonknoop 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 eerste zoonknoop op uit "books.xml":

//controleer of de eerste knoop een elementknoop is
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)
  { 
  //Process only element nodes
  document.write(firstNode.childNodes[i].nodeName);
  document.write(" = ");
  document.write(firstNode.childNodes[i].childNodes[0].nodeValue);
  document.write("<br />");
  } 
}

The output of the above code is:

title = Everyday Italian
author = Giada De Laurentiis
year = 2005
price = 30.00