XML DOM replaceChild() method

Definition and usage

replaceChild() The method replaces the child node with a new node.

The new node can be an existing node in the document or a newly created node.

Tip:The replaced child node can be inserted later into any element in the same document. Please use the insertBefore() or appendChild() method to insert it later into the same document, or use the adoptNode() or importNode() method to insert the replaced node into another document.

Syntax

nodeObject.replaceChild(newchild,oldchild)

Parameters

Parameters Description
newchild Required. Node object. The new node to be inserted into the child node list.
oldchild Required. Node object. The node to be replaced in the child node list.

Technical details

DOM version: Core Level 1 Node Object. Modified in DOM Level 3.
Wartość zwracana: Obiekt Node. Węzeł zastąpiony (oldchild).

Przykład

Poniższy kod załaduje "books.xml" do xmlDoc i zastąpi pierwszy element <book>:

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;
    // Utwórz element book, element title i węzeł tekstowy
    newNode = xmlDoc.createElement("book");
    newTitle = xmlDoc.createElement("title");
    newText = xmlDoc.createTextNode("Hello World");
    // Dodaj węzeł tekstowy do węzła title
    newTitle.appendChild(newText);
    // Dodaj węzeł title do węzła book
    newNode.appendChild(newTitle);
    y = xmlDoc.getElementsByTagName("book")[0];
    // Zastąp pierwszy element book nowym elementem book
    x.replaceChild(newNode, y);
    z = xmlDoc.getElementsByTagName("title");
    // Wydrukuj wszystkie tytuły
    for (i = 0; i < z.length; i++) {
        txt += z[i].childNodes[0].nodeValue + "<br>";
    }
    document.getElementById("demo").innerHTML = txt;
}

Spróbuj sam

Wspierane przeglądarki

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
Wspierane Wspierane Wspierane Wspierane Wspierane

Wszystkie główne przeglądarki wspierają to replaceChild() Metody.