XML DOM – 改變節(jié)點值

2018-02-11 16:32 更新

XML DOM 改變節(jié)點值

在使用 DOM 時,你可以根據(jù)需要修改節(jié)點值,具體的修改方法請參考本節(jié)內(nèi)容。

nodeValue 屬性用于改變節(jié)點值。

setAttribute() 方法用于改變屬性值。


實例

嘗試一下 - 實例

下面的實例使用 XML 文件 books.xml
函數(shù) loadXMLDoc(),位于外部 JavaScript 中,用于加載 XML 文件。

改變元素的文本節(jié)點
本例使用 nodeValue 屬性來改變 "books.xml" 中第一個 <title> 元素的文本節(jié)點。

通過使用 setAttribute 來改變屬性值
本例使用 setAttribute() 方法來改變第一個 <book> 的 "category" 屬性的值。

通過使用 nodeValue 來改變屬性值
本例使用 nodeValue 屬性來改變第一個 <book> 的 "category" 屬性的值。


改變元素的值

在 DOM 中,每種成分都是節(jié)點。元素節(jié)點沒有文本值。

元素節(jié)點的文本存儲在子節(jié)點中。該節(jié)點稱為文本節(jié)點。

改變元素文本的方法,就是改變這個子節(jié)點(文本節(jié)點)的值。


改變文本節(jié)點的值

nodeValue 屬性可用于改變文本節(jié)點的值。

下面的代碼片段改變了第一個 <title> 元素的文本節(jié)點值:

實例

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Easy Cooking";

嘗試一下 ?

實例解釋:

  1. 使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
  2. 獲取第一個 <title> 元素的文本節(jié)點
  3. 把該文本節(jié)點的節(jié)點值更改為 "Easy Cooking"

遍歷并更改所有 <title> 元素的文本節(jié)點: 嘗試一下


改變屬性的值

在 DOM 中,屬性也是節(jié)點。與元素節(jié)點不同,屬性節(jié)點擁有文本值。I

改變屬性的值的方法,就是改變它的文本值。

可以通過使用 setAttribute() 方法或?qū)傩怨?jié)點的 nodeValue 屬性來完成這個任務(wù)。


通過使用 setAttribute() 改變屬性

setAttribute() 方法改變已有屬性的值,或創(chuàng)建新屬性。

下面的代碼改變 <book> 元素的 category 屬性:

實例

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName('book');
x[0].setAttribute("category","food");

嘗試一下 ?

實例解釋:

  1. 使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
  2. 獲取第一個 <book> 元素
  3. 把 "category" 屬性的值更改為 "food"

遍歷所有的 <title> 元素并添加一個新屬性: 嘗試一下

注意:如果屬性不存在,則創(chuàng)建一個新屬性(擁有指定的名稱和值)。


通過使用 nodeValue 改變屬性

nodeValue 屬性可用于更改屬性節(jié)點的值:

實例

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("book")[0]
y=x.getAttributeNode("category");
y.nodeValue="food";

嘗試一下 ?

實例解釋:

  1. 使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
  2. 獲取第一個 <book> 元素的 "category" 屬性
  3. 把該屬性節(jié)點的值更改為 "food"

相關(guān)文章

HTML DOM

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號