文字
分享

XML DOM



DOM(Document Object Model 文档对象模型)定义了访问和操作文档的标准方法。


XML DOM

XML DOM(XML Document Object Model)定义了访问和操作 XML 文档的标准方法。

XML DOM 把 XML 文档作为树结构来查看。

所有元素可以通过 DOM 树来访问。可以修改或删除它们的内容,并创建新的元素。元素,它们的文本,以及它们的属性,都被认为是节点。

在我们的 XML DOM 教程中,您可以学习更多有关 XML DOM 的知识。


HTML DOM

HTML DOM 定义了访问和操作 HTML 文档的标准方法。

所有 HTML 元素可以通过 HTML DOM 来访问。

在我们的 HTML DOM 教程中,您可以学习更多有关 HTML DOM 的知识。.


加载一个 XML 文件 - 跨浏览器实例

下面的实例把 XML 文档("note.xml")解析到 XML DOM 对象中,然后通过 JavaScript 提取一些信息:

实例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

<html>

<body>

<h1>W3Schools Internal Note</h1>

<div>

<b>To:</b> <span id="to"></span><br />

<b>From:</b> <span id="from"></span><br />

<b>Message:</b> <span id="message"></span>

</div>

<script>

if (window.XMLHttpRequest)

{// code for IE7+, Firefox, Chrome, Opera, Safari

xmlhttp=new XMLHttpRequest();

}

else

{// code for IE6, IE5

xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

}

xmlhttp.open("GET","note.xml",false);

xmlhttp.send();

xmlDoc=xmlhttp.responseXML;

document.getElementById("to").innerHTML=

xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;

document.getElementById("from").innerHTML=

xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;

document.getElementById("message").innerHTML=

xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;

</script>

</body>

</html>

jianzhan Internal Note

To: Tove

From: Jani

Message: Don't forget me this weekend!


重要注释!

如需从上面的 XML 文件("note.xml")的 <to> 元素中提取文本 "Tove",语法是:

getElementsByTagName("to")[0].childNodes[0].nodeValue

请注意,即使 XML 文件只包含一个 <to> 元素,您仍然必须指定数组索引 [0]。这是因为 getElementsByTagName() 方法返回一个数组。


加载一个 XML 字符串 - 跨浏览器实例

下面的实例把 XML 字符串解析到 XML DOM 对象中,然后通过 JavaScript 提取一些信息:

实例

<html>
 <body>
 <h1>W3Schools Internal Note</h1>
 <div>
 <b>To:</b> <span id="to"></span><br />
 <b>From:</b> <span id="from"></span><br />
 <b>Message:</b> <span id="message"></span>
 </div>
 <script>
 txt="<note>";
 txt=txt+"<to>Tove</to>";
 txt=txt+"<from>Jani</from>";
 txt=txt+"<heading>Reminder</heading>";
 txt=txt+"<body>Don't forget me this weekend!</body>";
 txt=txt+"</note>";
 if (window.DOMParser)
 {
 parser=new DOMParser();
 xmlDoc=parser.parseFromString(txt,"text/xml");
 }
 else // Internet Explorer
 {
 xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
 xmlDoc.async=false;
 xmlDoc.loadXML(txt);
 }
 document.getElementById("to").innerHTML=
 xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;
 document.getElementById("from").innerHTML=
 xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;
 document.getElementById("message").innerHTML=
 xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;
 </script>
 </body>
jianzhan Internal Note
To: Tove
From: Jani
Message: Don't forget me this weekend!


上一篇:XML Parser下一篇:XML to HTML