XML DOM – 創建節點
嘗試一下- 實例
下面的實例使用XML文件books.xml 。
函數loadXMLDoc() ,位於外部JavaScript中,用於加載XML文件。
創建元素節點
本例使用createElement() 來創建一個新的元素節點,並使用appendChild() 把它添加到一個節點中。
使用createAttribute創建屬性節點
本例使用createAttribute() 來創建一個新的屬性節點,並使用setAttributeNode() 把它插入一個元素中。
使用setAttribute創建屬性節點
本例使用setAttribute() 為一個元素創建一個新的屬性。
創建文本節點
本例使用createTextNode() 來創建一個新的文本節點,並使用appendChild() 把它添加到一個元素中。
創建CDATA section節點
本例使用createCDATAsection() 來創建一個CDATA section 節點,並使用appendChild() 把它添加到一個元素中。
創建註釋節點
本例使用createComment() 來創建一個註釋節點,並使用appendChild() 把它添加到一個元素中。
創建新的元素節點
createElement() 方法創建一個新的元素節點:
實例
newel=xmlDoc.createElement("edition");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);
嘗試一下»
實例解釋:
- 使用loadXMLDoc()把" books.xml "載入xmlDoc中
- 創建一個新的元素節點<edition>
- 向第一個<book> 元素追加這個元素節點
遍歷並向所有<book>元素添加一個元素: 嘗試一下
創建新的屬性節點
createAttribute() 用於創建一個新的屬性節點:
實例
newatt=xmlDoc.createAttribute("edition");
newatt.nodeValue="first";
x=xmlDoc.getElementsByTagName("title");
x[0].setAttributeNode(newatt);
嘗試一下»
實例解釋:
- 使用loadXMLDoc()把" books.xml "載入xmlDoc中
- 創建一個新的屬性節點"edition"
- 設置屬性節點的值為"first"
- 向第一個<title> 元素添加這個新的屬性節點
遍歷所有的<title>元素,並添加一個新的屬性節點: 嘗試一下
注意:如果該屬性已存在,則被新屬性替代。
使用setAttribute() 創建屬性
由於setAttribute() 方法可以在屬性不存在的情況下創建新的屬性,我們可以使用這個方法來創建一個新的屬性。
實例
x=xmlDoc.getElementsByTagName('book');
x[0].setAttribute("edition","first");
嘗試一下»
實例解釋:
- 使用loadXMLDoc()把" books.xml "載入xmlDoc中
- 為第一個<book> 元素設置(創建)值為"first" 的"edition" 屬性
遍歷所有的<title>元素並添加一個新屬性: 嘗試一下
創建文本節點
createTextNode() 方法創建一個新的文本節點:
實例
newel=xmlDoc.createElement("edition");
newtext=xmlDoc.createTextNode("first");
newel.appendChild(newtext);
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);
嘗試一下»
實例解釋:
- 使用loadXMLDoc()把" books.xml "載入xmlDoc中
- 創建一個新元素節點<edition>
- 創建一個新的文本節點,其文本是"first"
- 向這個元素節點追加新的文本節點
- 向第一個<book> 元素追加新的元素節點
向所有的<book>元素添加一個帶有文本節點的元素節點: 嘗試一下
創建CDATA Section 節點
createCDATASection() 方法創建一個新的CDATA section 節點。
實例
newCDATA=xmlDoc.createCDATASection("Special Offer & Book Sale");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newCDATA);
嘗試一下»
實例解釋:
- 使用loadXMLDoc()把" books.xml "載入xmlDoc中
- 創建一個新的CDATA section 節點
- 向第一個<book> 元素追加這個新的CDATA section 節點
遍歷並向所有<book>元素添加一個CDATA section: 嘗試一下
創建註釋節點
createComment() 方法創建一個新的註釋節點。
實例
newComment=xmlDoc.createComment("Revised March 2008");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newComment);
嘗試一下»
實例解釋:
- 使用loadXMLDoc()把" books.xml "載入xmlDoc中
- 創建一個新的註釋節點
- 把這個新的註釋節點追加到第一個<book> 元素
循環並向所有<book>元素添加一個註釋節點: 嘗試一下