| 域名空间 下载中心 社区论坛 信息公告 MY小屋 |
![]() |
联系我们 设为首页 加入收藏 |
|
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿 论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图 专题 | 应用软件 | 聊天通讯 | Q Q 专栏 | 建站经验 | 在线工具 | 站长Club | 注 册 表 | 旧版 社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务 |
| 新版上线![旧版] | |||||
注:打开慢时请稍等
浏览整个XML文件http://www.iyit.net 日期:2006-5-24 12:03:36 来源:整理转载 点击: |
建立浏览节点的网页 1. 在文字编辑器中, 开启 一份新的、空白的文本文件,然后输入显示于列表9-9 中的HTML 网页内容。(你可以在随书光盘的 ShowNodes.htm 档案中找到。) 2. 利用文字编辑器的 存盘 指令,将文件储存于本机硬盘中,文件名为 ShowNodes.htm : ShowNodes.htm <!--File Name:ShowNodes.htm --> <HTML> <HEAD> <TITLE>Show DOM Nodes</TITLE> <SCRIPT LANGUAGE="JavaScript" FOR="window" EVENT="ONLOAD"> /*get Document node:*/ Document =dsoXML.XMLDocument; /*start by passing the Document node to DisplayNodes:*/ DisplayDIV.innerText =DisplayNodes(Document,0); function DisplayNodes (Node,IndentLevel) { /*declare local variables for recursion:*/ var i; var DisplayString =""; /*build up the indentation for this level:*/ Indent =""; IndentDelta =" "; for (i=0;i <IndentLevel;++i) Indent +=IndentDelta; /*display the current node 's properties:*/ DisplayString +=Indent +"nodeName:" +Node.nodeName +"\n" +Indent +"nodeTypeType:" +Node.nodeType +"\n" +Indent +"nodeTypeString:" +Node.nodeTypeString +"\n" +Indent +"nodeValue:" +Node.nodeValue +"\n \n"; /*display each of the node 's attribute child nodes:*/ Indent +=IndentDelta; for (i=0; Node.attributes !=null &&i <Node.attributes.length; ++i) DisplayString +=Indent +"nodeName:" +Node.attributes(i).nodeName +"\n" +Indent +"nodeTypeType:" +Node.attributes(i).nodeType +"\n" +Indent +"nodeTypeString:" +Node.attributes(i).nodeTypeString +"\n" +Indent +"nodeValue:" +Node.attributes(i).nodeValue +"\n \n"; /*display each of the node 's nonattribute child nodes:*/ for (i=0;i <Node.childNodes.length;++i) DisplayString += DisplayNodes (Node.childNodes(i),IndentLevel +1); /*return the string containing the results:*/ return DisplayString; } </SCRIPT> </HEAD> <BODY> <XML ID="dsoXML " SRC=="Inventory Dom.xml"></XML> <H2>XML Document Object Model (DOM)Nodes</H2> <DIV ID="DisplayDIV"></DIV> </BODY> </HTML> script 程序一开始将Document 节点传给DisplayNodes 函式,此函式会传回该Document 节点及其子节点上的显示信息。Script 程序会将显示信息指定给名为DisplayDIV 的DIV 元素中的innerText 属性,其中DIV 元素是位于网页中的BODY标签中。而网页接着将显示此信息。 DisplayDIV.innerText =DisplayNodes(Document,0); 函式DisplayNodes 的第二个参数指出显示节点资料所使用的缩排等级。函式DisplayNodes 的宣告如下所示: function DisplayNodes (Node,IndentLevel) 函式的主要执行步骤如下所示: 函式将适当数量的空格符储存在变量Indent 中,此变量被用来在每一行节点信息的一开始建立缩排空间。缩排所用的空格符的个数是由DisplayNodes 的传入参数IndentLevel 所决定: /*build up the indentation for this level:*/ Indent =""; IndentDelta =" "; for (i=0;i <IndentLevel;++i) Indent +=IndentDelta; 函式会储存目前节点的显示信息-意即,透过Node 参数传送给函式DisplayNodes 的节点(最初是文件节点): /*display the current node 's properties:*/ DisplayString +=Indent +"nodeName:" +Node.nodeName +"\n" +Indent +"nodeTypeType:" +Node.nodeType +"\n" +Indent +"nodeTypeString:" +Node.nodeTypeString +"\n" +Indent +"nodeValue:" +Node.nodeValue +"\n \n"; 提示 如果你想要看看每个节点的额外属性,你可以把这些属性加在程序代码区块前。你可以使用表格9-2 中提供的任何的共同节点属性。然而,不要使用任何特定节点形态的属性(例如表格9-3 中属于Document 节点的特定属性),因为并不是所有节点形态都具有这些属性。 函式会储存目前节点子Attribute 节点的显示信息。缩排空间会随着阶层等级的增加而增加,这里阶层等级是代表这些是目前节点的其子节点: /*display each of the node 's attribute child nodes:*/ Indent +=IndentDelta; for (i=0; Node.attributes !=null &&i <Node.attributes.length; ++i) DisplayString +=Indent +"nodeName:" +Node.attributes(i).nodeName +"\n" +Indent +"nodeTypeType:" +Node.attributes(i).nodeType +"\n" +Indent +"nodeTypeString:" +Node.attributes(i).nodeTypeString +"\n" +Indent +"nodeValue:" +Node.attributes(i).nodeValue +"\n \n"; 注意 函式DisplayNodes 并不会显示Attribute 节点中不必要的子Text 节点,因为从Attribute 节点本身的nodeValue 属性直接取得属性值是更为方便的方法。 借着呼叫这些节点的函式,函式DisplayNodes 会储存每个节点的非属性子节点的显示信息。这些就是所谓递归方式的函式呼叫,如下所示: /*display each of the node 's nonattribute child nodes:*/ for (i=0;i <Node.childNodes.length;++i) DisplayString += DisplayNodes (Node.childNodes(i),IndentLevel +1); 函式DisplayNodes 最后借着传回包含所有节点信息的字符串作为结束: /*return the string containing the results:*/ return DisplayString; 3. 在Internet Explorer 5 中开启 ShowNodes.htm 档案。 注意,nodeTypeString 属性以小写字符来包含所有的节点形态。(例如,形态「Document」 和 「Processing-Instruction」变成「document」与「processinginstruction」来储存其形态名称) 一开始,网页显示 Inventory Dom.xml 档案中的XML 文件(在列表9-1 与随书光盘中都有提供)。第一部分的显示结果如下面网页中所示。 4. 要观看其它XML 文件的节点结构,可以编辑网页的data island 来达成。例如,要观看档案Inventory Valid Entity.xml(列表6-1 和随书光盘中都有提供)的节点结构,你可以将data island 的数据修改如下: <XML ID="dsoXML " SRC="Inventory Valid Entity.xml"></XML> 编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部] 上一篇:存取XML实体与卷标 下一篇:检查XML文件的有效性 转载请注明来源:www.iyit.net 特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。 |
| 最新更新 | 热点排行 | 推荐新闻 | |||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
| 友情链接 | ||||||
| 设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接 |
| |||||||