XML DOM 改變節(jié)點(diǎn)值
nodeValue 屬性用于改變節(jié)點(diǎn)值。
setAttribute() 方法用于改變屬性值。
嘗試一下 - 實(shí)例
下面的實(shí)例使用 XML 文件 books.xml。
函數(shù) loadXMLDoc(),位于外部 JavaScript 中,用于加載 XML 文件。
改變?cè)氐奈谋竟?jié)點(diǎn)
本例使用 nodeValue 屬性來(lái)改變 "books.xml" 中第一個(gè) <title> 元素的文本節(jié)點(diǎn)。
通過(guò)使用 setAttribute 來(lái)改變屬性值
本例使用 setAttribute() 方法來(lái)改變第一個(gè) <book> 的 "category" 屬性的值。
通過(guò)使用 nodeValue 來(lái)改變屬性值
本例使用 nodeValue 屬性來(lái)改變第一個(gè) <book> 的 "category" 屬性的值。
改變?cè)氐闹?/h2>
在 DOM 中,每種成分都是節(jié)點(diǎn)。元素節(jié)點(diǎn)沒(méi)有文本值。
元素節(jié)點(diǎn)的文本存儲(chǔ)在子節(jié)點(diǎn)中。該節(jié)點(diǎn)稱(chēng)為文本節(jié)點(diǎn)。
改變?cè)匚谋镜姆椒ǎ褪歉淖冞@個(gè)子節(jié)點(diǎn)(文本節(jié)點(diǎn))的值。
改變文本節(jié)點(diǎn)的值
nodeValue 屬性可用于改變文本節(jié)點(diǎn)的值。
下面的代碼片段改變了第一個(gè) <title> 元素的文本節(jié)點(diǎn)值:
實(shí)例
<!DOCTYPE html> <html> <head> <script src="loadxmldoc.js"> </script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Easy Cooking"; document.write(x.nodeValue); </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線(xiàn)實(shí)例
實(shí)例解釋?zhuān)?/p>
使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
獲取第一個(gè) <title> 元素的文本節(jié)點(diǎn)
把該文本節(jié)點(diǎn)的節(jié)點(diǎn)值更改為 "Easy Cooking"
遍歷并更改所有 <title> 元素的文本節(jié)點(diǎn):嘗試一下
改變屬性的值
在 DOM 中,屬性也是節(jié)點(diǎn)。與元素節(jié)點(diǎn)不同,屬性節(jié)點(diǎn)擁有文本值。I
改變屬性的值的方法,就是改變它的文本值。
可以通過(guò)使用 setAttribute() 方法或?qū)傩怨?jié)點(diǎn)的 nodeValue 屬性來(lái)完成這個(gè)任務(wù)。
通過(guò)使用 setAttribute() 改變屬性
setAttribute() 方法改變已有屬性的值,或創(chuàng)建新屬性。
下面的代碼改變 <book> 元素的 category 屬性:
實(shí)例
<!DOCTYPE html> <html> <head> <script src="loadxmldoc.js"> </script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("category","food"); document.write(x[0].getAttribute("category")); </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線(xiàn)實(shí)例
實(shí)例解釋?zhuān)?/p>
使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
獲取第一個(gè) <book> 元素
把 "category" 屬性的值更改為 "food"
遍歷所有的 <title> 元素并添加一個(gè)新屬性:嘗試一下
注意:如果屬性不存在,則創(chuàng)建一個(gè)新屬性(擁有指定的名稱(chēng)和值)。
通過(guò)使用 nodeValue 改變屬性
nodeValue 屬性可用于更改屬性節(jié)點(diǎn)的值:
實(shí)例
<!DOCTYPE html> <html> <head> <script src="loadxmldoc.js"> </script> </head> <body> <script> xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book")[0] y=x.getAttributeNode("category"); y.nodeValue="food"; document.write(y.nodeValue); </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線(xiàn)實(shí)例
實(shí)例解釋?zhuān)?/p>
使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
獲取第一個(gè) <book> 元素的 "category" 屬性
把該屬性節(jié)點(diǎn)的值更改為 "food"