建站部落网 - www.jzbulo.com 首 页业界动态免费空间
建站首页 | 业界动态 | 网页制作 | 网络编程 | 网站运营 | 服务器技术 | 网页特效 | 图形图像 | 计算机技术 | 作品欣赏
您当前的位置:建站部落 > 网络编程 > Xml编程 > 文章内容 注册用户 用户管理 退出登录
XML教程:XML DOM 访问节点
作者:佚名  来源:网页教学网   发布时间:2007-9-11 17:40:00  发布人:jzbulo

减小字体 增大字体

通过DOM,您可以访问XML文档中的每个节点。


查找并访问节点

你可通过若干种方法来查找您希望操作的元素:

  • 通过使用getElementsByTagName()方法
  • 通过使用一个元素节点的parentNode、firstChild以及lastChild属性

getElementsByTagName()

getElementsByTagName()方法可在整个文档中查找任何XML元素。

此方法会忽略文档的结构。假如你文档中所有<book>元素,getElementsByTagName()方法会全部找出它们,不管这些<book>元素位于哪个级别。

就是说,这个方法会给您任何您所需要的XML元素,不论它们所处的位置!

getElementsByTagName()方法会使用指定的标签名返回所有的元素(作为一个节点列表),这些元素是您在使用此方法时所处的元素的后代。

getElementsByTagName()可用于任何XML元素:

getElementsByTagName() 语法

getElementsByTagName("tagname");

例子

下面这个例子会返回文档中所有<book>元素的一个节点列表:

xmlDoc.getElementsByTagName("book"); 

节点列表

当使用某个节点列表时,我们通常会把此列表存储在一个变量中,就像这样:

var x=xmlDoc.getElementsByTagName("book");

现在,变量x包含着页面中所有<book>元素的一个列表,并且我们可通过它们的索引号莱访问这些<book>元素。

注释:索引起始于0。

您可以通过使用length属性来循环遍历节点列表:

var x=xmlDoc.getElementsByTagName("book");for (var i=0;i<x.length;i++)  {   // do something with each <book> element  }

您也可以通过使用索引号莱访问某个具体的元素。

要访问第三个<book>元素,您可以这样写:

var y=x[2];

parentNode、firstChild以及lastChild

属性parentNode、firstChild以及lastChild会遵循文档的结构,可在文档中继续进行短距离的旅行。

请看下面的XML片段:

<bookstore>  <book category="COOKING">    <title lang="en">Everyday Italian</title>     <author>Giada De Laurentiis</author>     <year>2005</year>     <price>30.00</price>   </book></bookstore>

在上面的XML代码中,<title>元素是<book>元素的首个子元素(firstChild),<price>元素是<book>元素的最后一个子元素(lastChild)。

同时,<book>元素是<title>、<author>、<year>以及<price>元素的父节点(parentNode)


根节点

有一个特殊的文档属性可用来访问这些标签:

  • document.documentElement

此属性可返回存在于XML和HTML文档中的根节点。


[] [返回上一页] [打 印] [收 藏]
相关文章 赞助商链接
· 写给刚刚踏入网页设计这个世界的你
· DesignUK 设想英伦系列活动之大声展21日在沪..
· 婚恋交友网站盈利模式初探
· CNAP2007国际艺术展在北京酒厂国际艺术园医..
· 德国DFI学院学生获奖作品之一:大众篇(1)
· Xbox Forza Street Racing 平面广告设计
· Jessica Vernick 平面设计
· Kelsey Reckord 平面设计
· PRINT-RUN伦敦防治肺癌慈善海报展欣赏
· [摄影] 水中芙蓉
· [同盟报道]清华美院2007本科毕业展开幕
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图
声明:本站中的内容及图片来均源于互联网,其中演示的技术细节仅用于试验 环境的技术研究以及漏洞的验证。
文章内容不涉及任何有版权的内容,仅供技术交流研究之用。网 站联系QQ:175612638
Copyright © 2002-2006 jzbulo.com. All Rights Reserved . 粤ICP备05040326号