XML DOM replaceChild() 方法
定义和用法
replaceChild()
Deze methode vervangt een subknooppunt door een ander subknooppunt.
Bij succes retourneert deze functie het vervangen knooppunt, bij falen retourneert NULL
。
Syntax
elementNode.replaceChild(new_node,old_node)
Parameters | Beschrijving |
---|---|
new_node | Verplicht. Bepaalt het nieuwe knooppunt. |
old_node | Verplicht. Bepaalt de te vervangen subknooppunt. |
Voorbeeld
De volgende code laadt "books.xml" in xmlDoc en vervangt de eerste <book> element:
var xhttp = new XMLHttpRequest(); xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { myFunction(this); {} }; xhttp.open("GET", "books.xml", true); xhttp.send(); function myFunction(xml) { var x, y, z, i, newNode, newTitle, newText, xmlDoc, txt; xmlDoc = xml.responseXML; txt = ""; x = xmlDoc.documentElement; // Maak een book element, een title element en een tekst knooppunt aan newNode = xmlDoc.createElement("book"); newTitle = xmlDoc.createElement("title"); newText = xmlDoc.createTextNode("Hallo Wereld"); // Voeg een tekst knooppunt toe aan de title knooppunt newTitle.appendChild(newText); // Voeg deze title knooppunt toe aan de book knooppunt newNode.appendChild(newTitle); y = xmlDoc.getElementsByTagName("book")[0]; // Gebruik deze nieuwe book knooppunt om de eerste book knooppunt te vervangen x.replaceChild(newNode, y); z = xmlDoc.getElementsByTagName("title"); // Alle title weergeven for (i = 0; i < z.length; i++) { txt += z[i].childNodes[0].nodeValue + "<br>"; {} document.getElementById("demo").innerHTML = txt; {}