非常教程

HTML DOM参考手册

XML DOM 解析器

XML DOM 解析器

XML DOM 解析器


大多数浏览器都内建了供读取和操作 XML 的 XML 解析器。

解析器把 XML 转换为 JavaScript 可存取的对象(XML DOM)。


XML 解析器

XML DOM 包含了遍历 XML 树,访问、插入及删除节点的方法(函数)。

然而,在访问和操作 XML 文档之前,它必须加载到 XML DOM 对象。

XML 解析器读取 XML,并把它转换为 XML DOM 对象,这样才可以使用 JavaScript 访问它。

大多数浏览器有一个内建的 XML 解析器。


加载 XML 文档

下面的 JavaScript 片段加载一个 XML 文档("books.xml"):

实例

if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码 xhttp=new XMLHttpRequest(); } else { // IE6, IE5 浏览器执行代码 xhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET","books.xml",false); xhttp.send(); xmlDoc=xhttp.responseXML;

尝试一下 »

代码解释:

  • 创建一个 XMLHTTP 对象
  • 打开 XMLHTTP 对象
  • 发送一个 XML HTTP 请求到服务器
  • 设置响应为 XML DOM 对象

加载 XML 字符串

下面的代码加载并解析一个 XML 字符串:

实例

if (window.DOMParser) { parser=new DOMParser(); xmlDoc=parser.parseFromString(text,"text/xml"); } else { // Internet Explorer xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async=false; xmlDoc.loadXML(text); }

尝试一下 »

注意:Internet Explorer 使用 loadXML() 方法来解析 XML 字符串,而其他浏览器使用 DOMParser 对象。


跨域访问

出于安全原因,现代的浏览器不允许跨域访问。

这意味着,网页以及 XML 文件,它必须位于同一台服务器上尝试加载。

非常教程上的实例中所有打开的 XML 文件都是位于非常教程域上的。

如果您想要在您的网页上使用上面的实例,您加载的 XML 文件必须位于您自己的服务器上。


XML DOM 解析器

HTML DOM目录

1.XML DOM 教程
2.HTML DOM 教程
3.XML DOM – 节点列表和命名节点图
4.XML DOM 节点信息
5.XML DOM 访问节点
6.XML DOM 方法
7.XML DOM 加载函数
8.XML DOM 解析器
9.XML DOM – 节点
10.XML DOM 简介
11.XML DOM – 添加节点
12.XML DOM – 创建节点
13.XML DOM – 替换节点
14.XML DOM – 删除节点
15.XML DOM – 改变节点值
16.XML DOM – 获取节点值
17.XML DOM 浏览器差异
18.XML DOM – 遍历节点树
19.XML DOM – ProcessingInstruction 对象
20.XML DOM – DocumentType 对象
21.XML DOM – DocumentImplementation 对象
22.XML DOM – Document 对象
23.XML DOM – NamedNodeMap 对象
24.XML DOM – NodeList 对象
25.XML DOM – Node 对象
26.XML DOM – 节点类型
27.XML DOM – HttpRequest 对象
28.XML DOM – 克隆节点
29.XML DOM nodeType 属性
30.XML DOM nodeName 属性
31.XML DOM nextSibling 属性
32.XML DOM namespaceURI 属性
33.XML DOM localName 属性
34.XML DOM lastChild 属性
35.XML DOM firstChild 属性
36.XML DOM childNodes 属性
37.XML DOM baseURI 属性
38.XML DOM compareDocumentPosition() 方法
39.XML DOM cloneNode() 方法
40.XML DOM appendChild() 方法
41.XML DOM textContent 属性
42.XML DOM previousSibling 属性
43.XML DOM prefix 属性
44.XML DOM parentNode 属性
45.XML DOM ownerDocument 属性
46.XML DOM nodeValue 属性
47.XML DOM replaceChild() 方法
48.XML DOM removeChild() 方法
49.XML DOM lookupPrefix() 方法
50.XML DOM lookupNamespaceURI() 方法
51.XML DOM isSameNode() 方法
52.XML DOM isEqualNode() 方法
53.XML DOM insertBefore() 方法
54.XML DOM hasChildNodes() 方法
55.XML DOM hasAttributes() 方法
56.XML DOM childNodes 属性
57.XML DOM async 属性
58.XML DOM removeNamedItem() 方法
59.XML DOM item() 方法
60.XML DOM getNamedItem() 方法
61.XML DOM length 属性
62.XML DOM item() 方法
63.XML DOM length 属性
64.XML DOM nodeName 属性
65.XML DOM lastChild 属性
66.XML DOM inputEncoding 属性
67.XML DOM implementation 属性
68.XML DOM firstChild 属性
69.XML DOM documentURI 属性
70.XML DOM documentElement 属性
71.XML DOM doctype 属性
72.XML DOM xmlVersion 属性
73.XML DOM xmlStandalone 属性
74.XML DOM xmlEncoding 属性
75.XML DOM strictErrorChecking 属性
76.XML DOM nodeValue 属性
77.XML DOM nodeType 属性
78.XML DOM getElementsByTagNameNS() 方法
79.XML DOM getElementsByTagName() 方法
80.XML DOM createTextNode() 方法
81.XML DOM createElementNS() 方法
82.XML DOM createElement() 方法
83.XML DOM createComment() 方法
84.XML DOM createCDATASection() 方法
85.XML DOM – HttpRequest 对象
86.XML DOM – Comment 对象
87.XML DOM – CDATASection 对象
88.XML DOM – Text 对象
89.XML DOM – Attr 对象
90.XML DOM – Element 对象
91.XML DOM renameNode() 方法
92.XML DOM 解析器错误
93.XML DOM Parse Error 对象
94.XML DOM attributes 属性
95.XML DOM systemId 属性
96.XML DOM name 属性
97.XML DOM internalSubset 属性
98.XML DOM entities 属性
99.XML DOM ownerDocument 属性
100.XML DOM nodeType 属性