XML DOM - 屬性和方法


屬性和方法向 XML DOM 定義了編程接口。


編程接口

DOM 把 XML 模擬為一系列節(jié)點(diǎn)對象??赏ㄟ^ JavaScript 或其他編程語言來訪問節(jié)點(diǎn)。在本教程中,我們使用 JavaScript。

對 DOM 的編程接口是通過一套標(biāo)準(zhǔn)的屬性和方法來定義的。

屬性經(jīng)常按照"某事物是什么"的方式來使用(例如節(jié)點(diǎn)名是 "book")。

方法經(jīng)常按照"對某事物做什么"的方式來使用(例如刪除 "book" 節(jié)點(diǎn))。


XML DOM 屬性

一些典型的 DOM 屬性:

  • x.nodeName - x 的名稱

  • x.nodeValue - x 的值

  • x.parentNode - x 的父節(jié)點(diǎn)

  • x.childNodes - x 的子節(jié)點(diǎn)

  • x.attributes - x 的屬性節(jié)點(diǎn)

注釋:在上面的列表中,x 是一個(gè)節(jié)點(diǎn)對象。


XML DOM 方法

  • x.getElementsByTagName(name) - 獲取帶有指定標(biāo)簽名稱的所有元素

  • x.appendChild(node) - 向 x 插入子節(jié)點(diǎn)

  • x.removeChild(node) - 從 x 刪除子節(jié)點(diǎn)

注釋:在上面的列表中,x 是一個(gè)節(jié)點(diǎn)對象。


實(shí)例

從 books.xml 中的 <title> 元素獲取文本的 JavaScript 代碼:

txt=xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue

在該語句執(zhí)行后,txt 保存的值是 "Everyday Italian"。

解釋:

  • xmlDoc - 由解析器創(chuàng)建的 XML DOM 對象

  • getElementsByTagName("title")[0] - 第一個(gè) <title> 元素

  • childNodes[0] - <title> 元素的第一個(gè)子節(jié)點(diǎn)(文本節(jié)點(diǎn))

  • nodeValue - 節(jié)點(diǎn)的值(文本本身)