第9章使用文档对象模式脚本显示xml文档.docVIP

第9章使用文档对象模式脚本显示xml文档.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章使用文档对象模式脚本显示xml文档

i D o c u m e n t . d o c u m e n t E l e m e n t . c h i l d N o d e s . l e n g t h ; i + + ) { /* 显示B O O K元素的代码 * / } 因为B O O K元素的个数是未知的,所以该页面无法在其 B O D Y中使用固定的 S PA N元素集来 显示数据(就像在程序清单 9 - 3中的示例页面中所做的那样)。对于每一个B O O K元素来说,脚本 动态地生成所需要的整个 H T M L标记块来显示元素: for (i=0; i Document.documentElement.childNodes.length;i++) { HTMLCode += Title: +Document.documentElement.childNodes(i).childNodes(0).text + +Author: +Document.documentElement.childNodes(i).childNodes(1).text + +Binding: +Document.documentElement.childNodes(i).childNodes(2).text + +Number of pages: + +Document.documentElement.childNodes(i).childNodes(3).text + +Price: +Document.documentElement.childNodes(i).childNodes(4).text + ; } 脚本把所有这些 H T M L标记块保存到变量 H T M L C o d e中。在 f o r循环之后,当所有块已生成 并保存到 H T M L C o d e中时,脚本把 H T M L标记赋予该页 B O D Y中的D I V元素的i n n e r H T M L属性 (这个元素的I D为D i s p l a y D I V): D i s p l a y D I V . i n n e r H T M L = H T M L C o d e ; 接着,D I V元素立即提交H T M L并显示结果,它就是你在上一个图中看到的。 要使你自己确信不论 X M L文档包含多少个 B O O K元素页面都可正确工作,你可能要编辑该 页中的数据岛以便它显示 Inventory Big.xml,它包含的B O O K元素是 I n v e n t o r y. x m l中的两倍: d s o I n v e n t o r y S R C =Inventory Big.xml / X M L 9 .3.4 使用其他方法访问元素 到目前为止,你看到的示例脚本已访问了 E l e m e n t节点,它们使用 c h i l d N o d e s或f i r s t C h i l d节 点属性从一个节点移动到相邻的节点以便遍历节点层次。记住,你可以用类似的方法使用 l a s t C h i l d、p r e v i o u s S i b l i n g、n e x t S i b l i n g和p a r e n t N o d e节点属性。表9 - 2介绍了所有这些属性。 注意 c h i l d N o d e s、 f i r s t C h i l d和 l a s t C h i l d属性只允许你访问非属性子节点,而 p r e v i o u s S i b l i n g和n e x t S i b l i n g属性允许你访问任意类型的兄弟( s i b l i n g)节点。 另一种访问 X M L元素的方法是使用 g e t E l e m e n t s B y Ta g N a m e属性抽取所有具有某种类型名 (例如T I T L E)的元素。这种方法可用于 D o c u m e n t节点(如表9 - 3所示)以及E l e m e n t节点(如表 9 - 6所示)。如果调用 D o c u m e n t节点的方法,那么它返回文档中所有具有指定类型名的元素的 E l e m e n t节点集合。例如,下面的语句获取文档中所有具有名称 B O O K的元素的节点集合: NodeList = Document.getElementsByTagName(B O O K) ; 如果调用一个元素节点的 g e t E l e m e n t s B y Ta g N a m e方法,如下例所示,那么它返回 E l e m e n t节 点所有子孙元素的节点集合: NodeList = Element.getElemen

文档评论(0)

zhanghc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档