XML DOM appendChild()メソッド
❮要素オブジェクト
例
次のコードフラグメントは、「books.xml」をxmlDocにロードしてノード(<edition>)を作成し、最初の<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 xmlDoc = xml.responseXML;
var newel =
xmlDoc.createElement("edition");
var x =
xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);
document.getElementById("demo").innerHTML =
x.getElementsByTagName("edition")[0].nodeName;
}
上記のコードの出力は次のようになります。
edition
定義と使用法
appendChild()メソッドは、指定された要素ノードの最後の子ノードの後にノードを追加します。
このメソッドは、新しい子ノードを返します。
構文
appendChild(node)
Parameter | Description |
---|---|
node | Required. The node to append |
例
次のコードフラグメントは、「books.xml」をxmlDocにロードし、すべての<book>要素に新しいノードを追加します。
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
myFunction(xhttp);
}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
function myFunction(xml) {
var x, y, z, i, newel, newtext, xmlDoc, txt;
xmlDoc = xml.responseXML;
txt = "";
x = xmlDoc.getElementsByTagName("book");
for (i = 0; i
< x.length; i++) {
newel =
xmlDoc.createElement("edition");
newtext = xmlDoc.createTextNode("first");
newel.appendChild(newtext);
x[i].appendChild(newel);
}
//
Output all titles and editions
y =
xmlDoc.getElementsByTagName("title");
z =
xmlDoc.getElementsByTagName("edition");
for (i = 0; i
< y.length; i++) {
txt +=
y[i].childNodes[0].nodeValue +
" - Edition: " +
z[i].childNodes[0].nodeValue
+ "<br>";
}
document.getElementById("demo").innerHTML = txt;
}
上記のコードの出力は次のようになります。
Everyday Italian - Edition: First
Harry Potter - Edition: First
XQuery Kick Start - Edition: First
Learning XML - Edition: First
❮要素オブジェクト