- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
XML3
索迪教育IT实训基地 XML 的 DOM 编程应用 本章目标 理解文档对象模型的建立原理 学会文档对象模型各节点的应用操作与维持 文档对象模型—DOM 什么是DOM? DOM 是文档对象模型(Document Object Model)的缩写,是XML文档的编程接口,它定义如何在程序中访问和操作XML文档。 根据W3C规范,DOM是一种与浏览器,平台,语言无关的接口,用于访问页面元素的标准组件。 DOM是以层次结构组织的节点的集合。这个层次结构允许开发人员在树中导航寻找特定信息。 DOM还提供了一个API,允许开发人员添加、编辑、移动或删除树中任意位置的节点,从而创建一个处理程序。这个模型就是基于树形数据结构的,在使用之前必须加载整个文档或者至少是结构良好的文档片断。 DOM 文档树的组成 DOM 文档是由节点(node)构成的集合,这里的节点是文档树上的树枝或树叶。 常见的节点类型: 文档节点(document node):文档节点是整个文档中所有其它节点的根节点、父节点,根节点不等于根元素节点! 元素节点(element node):元素是 XML 的基本构件。典型地,元素可以有其它元素、文本节点或两者兼有来作为其子节点。元素节点还是可以有属性的唯一类型的节点 属性节点(attribute node):属性节点包含关于元素节点的信息,但实际上,不认为它是元素的子节点 文本节点(text node):确切来讲,文本节点是存放文本的不可见容器,它可以包含许多信息或仅仅是空白 XML 的DOM 解析应用 XML 文档的解析过程 XML文档需要通过解析器才能在内容中形成文档树: 常用浏览器都支持XML解析,所以如果浏览器读到XML文档,自动会建立文档树 如果要使浏览器读取外部的XML文档,就需要使用相应的JavaScript代码 应用程序要建立XML解析器对象,通过解析器读入XML文档,才能取得文档树 XML 的DOM 解析应用 JavaScript 中读取XML 文档建立文档树 浏览器读入当前文档以外的XML文档,需要使用JavaScript代码,其操作主要包括以下三步: 建立空XML 的DOM 文档对象 var 文档对象变量=new ActiveXObject(Msxml.DOMDocument); 设置文档对象的加载模式 文档对象变量.async=false; async 为true 为异步加载模式,就是说加载文档的操作开始后,就可以同时做其他的操作 async 为false 为非异步加载模式,就是说要等待加载文档的操作完成后,才能做其他的操作 加载指定XML 文件 文档对象变量.load(xml 文档名); 示例 用loadXML 方法建立文档树 DOM 允许通过读入一个XML 字符串,在内存中建立一个文档树,其基本命令格式如下: 文档对象变量.loadXML(XML 字符串); 例: script language=javascript type=text/javascript var dom = new ActiveXObject(Msxml.DOMDocument); dom.loadXML(studentsstudentjack/student/students); alert(dom.documentElement.nodeName); /script 示例 DOM 各类节点的应用 文档节点相关属性 示例 元素节点相关属性 示例 示例 属性节点相关属性 文本节点相关属性: 示例 DOM 的检索操作应用 selectNodes 方法 selectNodes 方法根据匹配模式操作来返回符合要求的节点集合,其基本格式如下: var 节点集变量=父节点.selectNodes(XPath 匹配模式); 例:所有成绩(score)小于90 分名单的代码 示例 selectSingleNode 方法 selectSingleNode 方法根据匹配模式操作来返回符合要求的第一个节点,其基本格式如下: var 节点变量=父节点.selectSingleNode(XPath 匹配模式); 示例 DOM 的文档维护处理技术 克隆现有节点 一个节点只能属于一个文档树,如果要把节点复制到其他文档树,就必须使用克隆现有节点的方法, 其命令格式如下: var 节点对象=源节点.cloneNode(是否递归克隆指定 XML 对象的子级); 新建节点 新节点的创建方法都是由文档对象来完成的,建立的新节点独立于文档存在,需要用后面的添加方法把节点加入文档。 新建节点方法 var 节点变量=文档对象.createNode(节点类型, 节点名, 节点名字空间); 节点类型:1--元素节点;2--属性节点;3--
文档评论(0)