節(jié)點屬性:nodeName、nodeValue 以及 nodeType。
XML DOM 節(jié)點信息
實例
下面的例子使用 XML 文件 books.xml。
函數(shù) loadXMLDoc(),位于外部 JavaScript 中,用于加載 XML 文件。
- 獲取元素節(jié)點的節(jié)點名稱
- 本例使用 nodeName 屬性來獲取 "books.xml" 中根元素的節(jié)點名稱。
- 從文本節(jié)點獲取文本
- 本例使用 nodeValue 屬性來獲取 "books.xml" 中第一個 <title> 元素的文本。
- 更改文本節(jié)點中的文本
- 本例使用 nodeValue 屬性來更改 "books.xml" 中第一個 <title> 元素的文本。
- 獲取元素節(jié)點的節(jié)點名稱和類型
- 本例使用 nodeName 和 nodeType 屬性來獲取 "books.xml" 中根元素的節(jié)點名稱和類型。
節(jié)點的屬性
在 XML 文檔對象模型 (DOM) 中,每個節(jié)點都是一個對象。
對象擁有方法(功能)和屬性(關(guān)于對象的信息),并可通過 JavaScript 進行訪問和操作。
三個重要的 XML DOM 節(jié)點屬性是:
- nodeName
- nodeValue
- nodeType
nodeName 屬性
nodeName 屬性規(guī)定節(jié)點的名稱。
- nodeName 是只讀的
- 元素節(jié)點的 nodeName 與標簽名相同
- 屬性節(jié)點的 nodeName 是屬性的名稱
- 文本節(jié)點的 nodeName 永遠是 #text
- 文檔節(jié)點的 nodeName 永遠是 #document
TIY
nodeValue 屬性
nodeValue 屬性規(guī)定節(jié)點的值。
- 元素節(jié)點的 nodeValue 是 undefined
- 文本節(jié)點的 nodeValue 是文本自身
- 屬性節(jié)點的 nodeValue 是屬性的值
例子 1:獲取元素的值
下面的代碼檢索第一個 <title> 元素的文本節(jié)點的值:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; txt=x.nodeValue;
結(jié)果:txt = "Harry Potter"
代碼解釋:
- 通過使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
- 獲取第一個 <title> 元素節(jié)點的文本節(jié)點
- 把 txt 變量設置為文本節(jié)點的值
TIY
例子 2:更改元素的值
下面的代碼更改第一個 <title> 元素的文本節(jié)點的值:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Easy Cooking";
代碼解釋:
- 通過使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
- 獲取第一個 <title> 元素節(jié)點的文本節(jié)點
- 把文本節(jié)點的值更改為 "Easy Cooking"
TIY
nodeType 屬性
nodeType 屬性規(guī)定節(jié)點的類型。
nodeType 是只讀的。
最重要的節(jié)點類型是:
元素類型 | 節(jié)點類型 |
---|---|
元素 | 1 |
屬性 | 2 |
文本 | 3 |
注釋 | 8 |
文檔 | 9 |
TIY