天天看點

XML DOM 删除節點

removeChild() 方法删除指定節點。

removeAttribute() 方法删除指定屬性。

下面的例子使用 XML 檔案 books.xml。

函數 loadXMLDoc(),位于外部 JavaScript 中,用于加載 XML 檔案。

<dl></dl>

<dt></dt>

删除元素節點

<dd>本例使用 removeChild() 來删除第一個 &lt;book&gt; 元素。</dd>

删除目前元素節點

<dd>本例使用 parentNode 和 removeChild() 來删除目前的 &lt;book&gt; 元素。</dd>

删除文本節點

<dd>本例使用 removeChild() 來删除第一個 &lt;title&gt; 元素的文本節點。</dd>

清空文本節點的文本

<dd>本例使用 nodeValue() 屬性來清空第一個 &lt;title&gt; 元素的文本節點。</dd>

根據名稱删除屬性

<dd>本例使用 removeAttribute() 從第一個 &lt;book&gt; 元素中删除 "category" 屬性。</dd>

根據對象删除屬性

<dd>本例使用 removeAttributeNode() 删除 &lt;book&gt; 元素中的所有屬性。 </dd>

removeChild() 方法删除指定的節點。

當一個節點被删除時,其所有子節點也會被删除。

下面的代碼片段将從載入的 xml 中删除第一個 &lt;book&gt; 元素:

通過使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中

把變量 y 設定為要删除的元素節點

通過使用 removeChild() 方法從父節點删除元素節點

TIY

removeChild() 方法是唯一可以删除指定節點的方法。

當你已定位需要删除的節點時,就可以通過使用 parentNode 屬性和 removeChild() 方法來删除此節點:

通過使用 parentNode 屬性和 removeChild() 方法來删除此元素節點

removeChild() 方法可用于删除文本節點:

把變量 x 設定為第一個 title 元素節點

把變量 y 設定為 要删除的文本節點

通過使用 removeChild() 方法從父節點删除節點

不太常用 removeChild() 從節點删除文本。可以使用 nodeValue 屬性代替它。請看下一段。

nodeValue 屬性可用于改變或清空文本節點的值:

把變量 x 設定為第一個 title 元素的文本節點

使用 nodeValue 屬性來清空文本節點的文本

循環并更改所有 &lt;title&gt; 元素的文本節點:TIY

removeAttribute(name) 方法用于根據名稱删除屬性節點。

Example: removeAttribute('category')

下面的代碼片段删除第一個 &lt;book&gt; 元素中的 "category" 屬性:

使用 getElementsByTagName() 來擷取 book 節點

從第一個 book 元素節點中删除 "category" 屬性

周遊并删除所有 &lt;book&gt; 元素的 "category" 屬性:TIY。

removeAttributeNode(node) 方法通過使用 Node 對象作為參數,來删除屬性節點。

Example: removeAttributeNode(x)

下面的代碼片段删除所有 &lt;book&gt; 元素的所有屬性:

使用 getElementsByTagName() 來擷取所有 book 節點

檢查每個 book 元素是否擁有屬性

如果在某個 book 元素中存在屬性,則删除該屬性