XMLDOM教程.docx

上传人:b****5 文档编号:5043590 上传时间:2022-12-12 格式:DOCX 页数:98 大小:45.92KB
下载 相关 举报
XMLDOM教程.docx_第1页
第1页 / 共98页
XMLDOM教程.docx_第2页
第2页 / 共98页
XMLDOM教程.docx_第3页
第3页 / 共98页
XMLDOM教程.docx_第4页
第4页 / 共98页
XMLDOM教程.docx_第5页
第5页 / 共98页
点击查看更多>>
下载资源
资源描述

XMLDOM教程.docx

《XMLDOM教程.docx》由会员分享,可在线阅读,更多相关《XMLDOM教程.docx(98页珍藏版)》请在冰豆网上搜索。

XMLDOM教程.docx

XMLDOM教程

XMLXMLXMLXMLDOMDOMDOMDOM教程教程教程教程

XMLXMLXMLXMLDOMDOMDOMDOM教程

•DOM首页

•DOM简介

•DOM节点

•DOM节点树

•DOM解析

•DOM加载

•DOM属性和方法

•DOM访问节点

•DOM节点信息

•DOM节点列表

•DOM遍历节点

•DOM浏览器

•DOM定位节点

节点操作

•DOM获取节点

•DOM改变节点

•DOM删除节点

•DOM替换节点

•DOM创建节点

•DOM添加节点

•DOM克隆节点

••••DOMHttpRequest

•NextPage

XMLXMLXMLXML文档对象模型定义访问和操作XMLXMLXMLXML文档的标准方法。

DOMDOMDOMDOM将XMLXMLXMLXML文档作为一个树形结构,而树叶被定义为节点。

开始学习DOM!

XMLXMLXMLXMLDOMDOMDOMDOM对象参考手册

在W3School,我们提供完整的DOM参考手册,其中包括所有的对象以及它们的属性和方法。

XMLXMLXMLXMLDOMDOMDOMDOM实例

学习50个实例!

使用我们的编辑器,你可以编辑源代码,然后单击测试按钮来查看结果。

亲自试一试吧!

XMLXMLXMLXMLDOMDOMDOMDOM简介简介简介简介

•PreviousPage

•NextPage

XMLXMLXMLXMLDOMDOMDOMDOM定义了访问和处理XMLXMLXMLXML文档的标准方法。

XMLXMLXMLXMLDOMDOMDOMDOM是XMLXMLXMLXMLDocumentDocumentDocumentDocumentObjectObjectObjectObjectModelModelModelModel的缩写,即XMLXMLXMLXML文档对象模型。

您应当具备的基础支持

在继续学习之前,您应当对下列知识有基本的了解:

•HTML/XHTML

•JavaScript

•XML

如果您希望首先学习这些项目,请在我们的首页访问这些教程。

什么是DOMDOMDOMDOM?

DOM是W3C(万维网联盟)的推荐标准。

DOM定义了访问诸如XML和XHTML文档的标准。

“W3C文档对象模型(DOM)是一个使程序和脚本有能力动态地访问和更新文档的内容、结构以及样式

的平台和语言中立的接口。

W3CDOM被分为3个不同的部分/级别(parts/levels):

核心DOMDOMDOMDOM

用于任何结构化文档的标准模型

XMLXMLXMLXMLDOMDOMDOMDOM

用于XML文档的标准模型

HTMLHTMLHTMLHTMLDOMDOMDOMDOM

用于HTML文档的标准模型

DOM定义了所有文档元素的对象和属性,以及访问它们的方法(接口)。

您可以在我们的W3C教程中获得更多有关W3CDOM规范/级别的信息。

什么是HTMLHTMLHTMLHTMLDOMDOMDOMDOM?

HTMLDOM定义了所有HTML元素的对象和属性,以及访问它们的方法(接口)。

如果您希望学习HTMLDOM,请访问我们的HTMLDOM教程。

什么是XMLXMLXMLXMLDOM?

DOM?

DOM?

DOM?

XMLDOM是:

•用于XML的标准对象模型

•用于XML的标准编程接口

•中立于平台和语言

•W3C的标准

XMLDOM定义了所有XML元素的对象和属性,以及访问它们的方法(接口)。

换句话说:

XMLXMLXMLXMLDOMDOMDOMDOM是用于获取、更改、添加或删除XMLXMLXMLXML元素的标准。

XMLXMLXMLXMLDOMDOMDOMDOM节点节点节点节点

•PreviousPage

•NextPageXMLXMLXMLXML文档中的每个成分都是一个节点。

节点

根据DOM,XML文档中的每个成分都是一个节点。

DOM是这样规定的:

•整个文档是一个文档节点

•每个XML标签是一个元素节点

•包含在XML元素中的文本是文本节点

•每一个XML属性是一个属性节点

•注释属于注释节点

DOMDOMDOMDOM实例

请看下面的XML文件(books.xml):

xmlversion="1.0"encoding="ISO-8859-1"?

>

HarryPotter

JK.Rowling

2005

29.99

EverydayItalian

GiadaDeLaurentiis

2005

30.00

LearningXML

ErikT.Ray

2003

39.95

XQueryKickStart

JamesMcGovern

PerBothner

KurtCagle

JamesLinn

VaidyanathanNagarajan

2003

49.99

在上面的XML中,根节点是

文档中的所有其他节点都被包含在中。

根节点有四个节点。

第一个节点有四个节点:

,<author>,<year>以及<price>,其中每个节点都包</p><p>含一个文本节点,"HarryPotter","JK.Rowling","2005"以及"29.99"。</p><p>文本总是存储在文本节点中</p><p>在DOM处理中一个普遍的错误是,认为元素节点包含文本。</p><p>不过,元素节点的文本是存储在文本节点中的。</p><p>在这个例子中:</p><p><year>2005</year><year>2005</year><year>2005</year><year>2005</year>,元素节点<year>,拥有一个值为"2005"的文本节点。</p><p>"2005"不是<year>元素的值!</p><p>XMLXMLXMLXMLDOMDOMDOMDOM节点树节点树节点树节点树</p><p>•PreviousPage</p><p>•NextPage</p><p>XMLXMLXMLXMLDOMDOMDOMDOM把XMLXMLXMLXMLDOMDOMDOMDOM文档视为一棵节点树(node-tree)(node-tree)(node-tree)(node-tree)。</p><p>树中的所有节点彼此之间都有关系。</p><p>XMLXMLXMLXMLDOMDOMDOMDOM节点树XMLDOM把XML文档视为一种树结构。</p><p>这种树结构被称为节点树。</p><p>可通过这棵树访问所有节点。</p><p>可以修改或删除它们的内容,也可以创建新的元素。</p><p>这颗节点树展示了节点的集合,以及它们之间的联系。</p><p>这棵树从根节点开始,然后在树的最低层级向文本</p><p>节点长出枝条:</p><p>上面的图片表</p><p>示XML文件books.xml。</p><p>父、子和同级节点</p><p>节点树中的节点彼此之间都有等级关系。</p><p>父、子和同级节点用于描述这种关系。</p><p>父节点拥有子节点,位于相同层级上的子节点称为同级节点(兄弟</p><p>或姐妹)。</p><p>•在节点树中,顶端的节点成为根节点</p><p>•根节点之外的每个节点都有一个父节点</p><p>•节点可以有任何数量的子节点</p><p>•叶子是没有子节点的节点</p><p>•同级节点是拥有相同父节点的节点</p><p>下面的图片展示出节点树的一个部分,以及节点间的关系:</p><p>因为XML数据是按照树的形式进行构造</p><p>的,所以可以在不了解树的确切结构且不了解其中包含的数据类型的情况下,对其进行遍历。</p><p>您将在本教程稍后的章节学习更多有关遍历节点树的知识。</p><p>注释:</p><p>父节点:</p><p>ParentNode,子节点:</p><p>ChildrenNode,同级节点:</p><p>SiblingNode。</p><p>第一个子节点----最后一个子节点</p><p>请看下面的XML片段:</p><p><bookstore></p><p><bookcategory="CHILDREN"></p><p><titlelang="en">HarryPotter

JK.Rowling

2005

29.99

在上面的XML中,元素是<book>元素的第一个子节点,而<price>元素是<book>元</p><p>素的最后一个子节点。</p><p>此外,<book>元素是<title>、<author>、<year>以及<price>元素的父节点。</p><p>解析解析解析解析XMLXMLXMLXMLDOMDOMDOMDOM</p><p>•PreviousPage</p><p>•NextPage</p><p>大多数浏览器都内建了供读取和操作XMLXMLXMLXML的XMLXMLXMLXML解析器。</p><p>解析器把XMLXMLXMLXML转换为JavaScriptJavaScriptJavaScriptJavaScript可存取的对象。</p><p>实例</p><p>W3School提供的实例独立于浏览器和平台。</p><p>这些实例可在所有现代浏览器中运行。</p><p>加载并解析XML文件</p><p>1)1)1)1)<html><html><html><html></p><p>2)2)2)2)<body><body><body><body></p><p>3)3)3)3)<script<script<script<scripttype="text/javascript">type="text/javascript">type="text/javascript">type="text/javascript"></p><p>4)4)4)4)trytrytrytry//Internet//Internet//Internet//InternetExplorerExplorerExplorerExplorer</p><p>5)5)5)5){{{{</p><p>6)6)6)6)xmlDoc=newxmlDoc=newxmlDoc=newxmlDoc=newActiveXObject("Microsoft.XMLDOM");ActiveXObject("Microsoft.XMLDOM");ActiveXObject("Microsoft.XMLDOM");ActiveXObject("Microsoft.XMLDOM");</p><p>7)7)7)7)}}}}</p><p>8)8)8)8)catch(e)catch(e)catch(e)catch(e)</p><p>9)9)9)9){{{{</p><p>10)10)10)10)trytrytrytry//Firefox,//Firefox,//Firefox,//Firefox,Mozilla,Mozilla,Mozilla,Mozilla,Opera,Opera,Opera,Opera,etc.etc.etc.etc.</p><p>11)11)11)11){{{{</p><p>12)12)12)12)</p><p>xmlDoc=document.implementation.createDocument("","",null);xmlDoc=document.implementation.createDocument("","",null);xmlDoc=document.implementation.createDocument("","",null);xmlDoc=document.implementation.createDocument("","",null);</p><p>13)13)13)13)}}}}</p><p>14)14)14)14)catch(e)catch(e)catch(e)catch(e){alert(e.message)}{alert(e.message)}{alert(e.message)}{alert(e.message)}</p><p>15)15)15)15)}}}}</p><p>16)16)16)16)trytrytrytry</p><p>17)17)17)17){{{{18)18)18)18)xmlDoc.async=false;xmlDoc.async=false;xmlDoc.async=false;xmlDoc.async=false;</p><p>19)19)19)19)xmlDoc.load("/example/xdom/books.xml");xmlDoc.load("/example/xdom/books.xml");xmlDoc.load("/example/xdom/books.xml");xmlDoc.load("/example/xdom/books.xml");</p><p>20)20)20)20)document.write("xmlDocdocument.write("xmlDocdocument.write("xmlDocdocument.write("xmlDocisisisisloaded,loaded,loaded,loaded,readyreadyreadyreadyforforforforuse");use");use");use");</p><p>21)21)21)21)}}}}</p><p>22)22)22)22)catch(e)catch(e)catch(e)catch(e){alert(e.message)}{alert(e.message)}{alert(e.message)}{alert(e.message)}</p><p>23)23)23)23)</script></script></script></script></p><p>24)24)24)24)</body></body></body></body></p><p>25)</html></html></html></html></p><p>加载并解析XML字符串</p><p>1)1)1)1)<html><html><html><html></p><p>2)2)2)2)<body><body><body><body></p><p>3)3)3)3)<script<script<script<scripttype="text/javascript">type="text/javascript">type="text/javascript">type="text/javascript"></p><p>4)4)4)4)text="<bookstore>"text="<bookstore>"text="<bookstore>"text="<bookstore>"</p><p>5)5)5)5)text=text+"<book>";text=text+"<book>";text=text+"<book>";text=text+"<book>";</p><p>6)6)6)6)text=text+"<title>Harrytext=text+"<title>Harrytext=text+"<title>Harrytext=text+"<title>HarryPotter";Potter";Potter";Potter";

7)7)7)7)text=text+"Jtext=text+"Jtext=text+"Jtext=text+"JK.K.K.K.Rowling";Rowling";Rowling";Rowling";

8)8)8)8)text=text+"2005";text=text+"2005";text=text+"2005";text=text+"2005";

9)9)9)9)text=text+"";text=text+"";text=text+"";text=text+"";

10)10)10)10)text=text+"";text=text+"";text=text+"";text=text+"";

11)11)11)11)trytrytrytry//Internet//Internet//Internet//InternetExplorerExplorerExplorerExplorer

12)12)12)12){{{{

13)13)13)13)xmlDoc=newxmlDoc=newxmlDoc=newxmlDoc=newActiveXObject("Microsoft.XMLDOM");ActiveXObject("Microsoft.XMLDOM");ActiveXObject("Microsoft.XMLDOM");ActiveXObject("Microsoft.XMLDOM");

14)14)14)14)xmlDoc.async="false";xmlDoc.async="false";xmlDoc.async="false";xmlDoc.async="false";

15)15)15)15)xmlDoc.loadXML(text);xmlDoc.loadXML(text);xmlDoc.loadXML(text);xmlDoc.loadXML(text);16)16)16)16)}}}}

17)17)17)17)catch(e)catch(e)catch(e)catch(e)

18)18)18)18){{{{

19)19)19)19)trytrytrytry//Firefox,//Firefox,//Firefox,//Firefox,Mozilla,Mozilla,Mozilla,Mozilla,Opera,Opera,Opera,Opera,etc.etc.etc.etc.

20)20)20)20){{{{

21)21)21)21)parser=newparser=newparser=newparser=newDOMParser();DOMParser();DOMParser();DOMParser();

22)22)22)22)xmlDoc=parser.parseFromString(text,"text/xml");xmlDoc=parser.parseFromString(text,"text/xml");xmlDoc=parser.parseFromString(text,"text/xml");xmlDoc=parser.parseFromString(text,"text/xml");

23)23)23)23)}}}}

24)24)24)24)catch(e)catch(e)catch(e)catch(e){alert(e.message)}{alert(e.message)}{alert(e.message)}{alert(e.message)}

25)25)25)25)}}}}

26)26)26)26)trytrytrytry

27)27)27)27){{{{

28)28)28)28)document.write("xmlDocdocument.write("xmlDocdocument.write("xmlDocdocument.write("xmlDoc已加载,可以使用。

");");");");

29)29)29)29)}}}}

30)30)30)30)catch(e)catch(e)catch(e)catch(e){alert(e.message)}{alert(e.message)}{alert(e.message)}{alert(e.message)}

31)31)31)31)

32)32)32)32)

33)

解析XMLXMLXMLXML

所有现代浏览器都内建了用于读取和操作XML的XML解析器。

解析器把XML读入内存,并把它转换为可被JavaScript访问的XMLDOM对象。

微软的XML解析器与其他浏览器中的解析器是有差异的。

微软的解析器支持对XML文件和XML字符

串(文本)的加载,而其他浏览器使用单独的解析器。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1