XML DOM appendChild() metod
Definition och användning
appendChild() metoden kan lägga till en ny undernod till slutet av en nod:s undernoder.
Denna metod kan returnera den nya undernoden.
Syntaks:
appendChild(newchild)
Parameter | Beskrivning |
---|---|
newchild | Den tillagda noden |
Returvärde
Tillagda noder.
Beskrivning
Denna metod lägger till noden newchild till dokumentet, så att den blir den sista undernoden till den aktuella noden.
Om newchild redan finns i dokumentträdet tas den bort från dokumentträdet och sätts in på ny plats. Om newchild är en DocumentFragment-nod infogas den inte direkt, utan dess undernoder infogas i slutet av currentNode:s childNodes[]-array.
Observera att en nod från en dokument (eller en nod som skapats av ett dokument) inte kan infogas i ett annat dokument. Detta innebär att newchild:s ownerDocument-attribut måste vara samma som den aktuella nodens ownerDocument-attribut.
Exempel
Följande funktion lägger till en ny paragraf i dokumentets slut:
function appendMessage (message) { var pElement = document.createElement("p"); var messageNode = document.createTextNode(message);pElement.appendChild(messageNode);
document.body.appendChild(pElement);
}
exempel
I alla exempel kommer vi att använda XML-filen books.xmloch JavaScript-funktionen loadXMLDoc()。
Följande kodfragment kan skapa och lägga till en nod till den första <book>-elementet och sedan skriva ut alla undernoder till den första <book>-elementet:
xmlDoc=loadXMLDoc("books.xml");
var newel=xmlDoc.createElement('edition');
var newtext=xmlDoc.createTextNode('First');
newel.appendChild(newtext);
var x=xmlDoc.getElementsByTagName('book')[0];
x.appendChild(newel);
;
var y=x.childNodes;
for (var i=0;i<y.length;i++)
{
//Visa endast elementnoder
if (y[i].nodeType==1)
{
document.write(y[i].nodeName);
document.write("<br />");
}
}
Uttalande:
title author year price edition
Kommentar:Internet Explorer ignorerar tomma textnoder mellan noder (t.ex. nyckeltecken), medan Mozilla inte gör detta. Därför hanterar vi endast elementnoder (där nodeType=1) i följande exempel.
Tips:För mer information om skillnaderna mellan XML DOM i IE och Mozilla webbläsare, besök vår DOM webbläsare Kapitel.