該removeChild()方法刪除指定的節點。
該removeAttribute()方法刪除指定的屬性。
試一試 - 示例
這些例子使用XML文件的Books.xml 。
刪除元素節點
本例使用removeChild()刪除第一個<book>元素。
刪除當前元素節點
本例使用parentNode和removeChild()刪除當前的<book>元素。
刪除文本節點
本例使用removeChild()刪除從第一個文本節點<title>元素。
清除文本節點的文本
本例使用nodeValue()屬性來清除前的文本節點<title>元素。
移除通過名稱獲得屬性
本例使用removeAttribute()來刪除"category"從第一屬性<book>元素。
通過刪除對象屬性
本例使用removeAttributeNode()從所有刪除所有屬性<book>元素。
刪除元素節點
該removeChild()方法刪除指定的節點。
當一個節點被刪除,所有它的子節點也被去除。
此代碼將刪除第一個<book>從加載XML元素:
例子解釋:
- 假設“ 的books.xml ”載入xmlDoc中
- 設置變量y是元素節點刪除
- 通過刪除元素節點removeChild()方法從父節點
刪除自己 - 刪除當前節點
該removeChild()的方法是刪除指定節點的唯一途徑。
當你瀏覽到你想刪除的節點,也可以使用parentNode屬性和刪除該節點removeChild()方法:
例子解釋:
- 假設“ 的books.xml ”載入到xmlDoc中
- 設置變量y是元素節點刪除
- 通過使用parentNode屬性和刪除元素節點removeChild()方法
刪除文本節點
所述removeChild()方法也可以用於去除文本節點:
例子解釋:
- 假設“ 的books.xml ”載入到xmlDoc中
- 設置變量x是第一個標題元素節點
- 設置變量y是文本節點刪除
- 通過刪除元素節點removeChild()方法從父節點
這是不是很常見使用removeChild()只是用來刪除節點的文本。 nodeValue屬性可以用來代替。 見下段。
清除文本節點
nodeValue屬性可用於更改文本節點的值:
例子解釋:
- 假設“ 的books.xml ”載入到xmlDoc中
- 拿到第一個冠軍元素的第一個子節點。
- 使用nodeValue屬性來清除從文本節點的文本
遍歷和更改所有的文本節點<title>元素: 試一試
按名刪除屬性節點
該removeAttribute()方法刪除其名稱的屬性節點。
例如: removeAttribute('category')
此代碼刪除"category"中的第一個屬性<book>元素:
例子解釋:
- 假設“ 的books.xml ”載入到xmlDoc中
- 使用getElementsByTagName()來獲取book節點
- 刪除"category"屬性形成第一本書元素節點
遍歷並刪除"category"的所有屬性<book>元素: 試一試
根據對象刪除屬性節點
該removeAttributeNode()方法刪除屬性節點,使用節點對象作為參數。
例如: removeAttributeNode(x)
此代碼刪除所有的所有屬性<book>元素:
例
x = xmlDoc.getElementsByTagName("book");
for (i = 0; i < x.length; i++)
{
while (x[i].attributes.length > 0) {
attnode = x[i].attributes[0];
old_att = x[i].removeAttributeNode(attnode);
}
}
試一試» 例子解釋:
- 假設“ 的books.xml ”載入到xmlDoc中
- 使用getElementsByTagName()來獲取所有book節點
- 對於每個book元素檢查是否有任何屬性
- 雖然在一本書中的元素是屬性,刪除屬性