疯狂XML学习笔记(5)———–XML DOM

dom (document object model,文档对象模型)定义访问和操作文档的一套标准方法。

XML DOM

XML DOM (XML Document Object Model) 定义一套访问和操作 XML 文档的标准方法。

DOM 把 XML 文档作为树结构来查看。能够通过 DOM 树来访问所有元素。可以修改或删除它们的内容,并创建新的元素。元素,它们的文本,以及它们的属性,都被认为是节点。

在下面的例子中,我们使用 DOM 引用从 元素中获取文本:

xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue

登录后复制

xmlDoc -由解析器创建的 XML 文档

getElementsByTagName(“to”)[0] – 第一个 元素

childNodes[0] – 元素的第一个子元素(文本节点)

nodeValue – 节点的值(文本本身)

 

HTML DOM

HTML DOM (HTML Document Object Model) 定义一套访问和操作 HTML 文档的标准方法。

可以通过 HTML DOM 访问所有 HTML 元素。

在下面的例子中,我们使用 DOM 引用来改变 id=”to” 的 HTML 元素的文本:

document.getElementById("to").innerHTML=

登录后复制

document – HTML 文档

getElementById(“to”) – 其中的 id=”to” 的 HTML 元素

innerHTML – HTML 元素的内部文本

 

解析 XML 文件 – 跨浏览器实例

下列代码把一个 XML 文档 (“note.xml”) 载入 XML 解析器中:

function parseXML(){try //Internet Explorer  {  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");  }catch(e)  {  try //Firefox, Mozilla, Opera, etc.    {    xmlDoc=document.implementation.createDocument("","",null);    }  catch(e)    {    alert(e.message);    return;    }  }xmlDoc.async=false;xmlDoc.load("note.xml");document.getElementById("to").innerHTML=xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;document.getElementById("from").innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElementById("message").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;}

W3School.com.cn Internal Note

To: 
From: 
Message: 

登录后复制

输出:

To: GeorgeFrom: JohnMessage: Don’t forget the meeting!

 

重要注释

如需从 XML 中提取文本 “John”,语法是:

getElementsByTagName("from")[0].childNodes[0].nodeValue

登录后复制

在这个 XML 例子中,只有一个 标签中,但是仍然需要规定数组的下标 [0],这是因为 XML 解析器方法 getElementsByTagName() 返回所有 节点的一个数组。

解析 XML 字符串 – 跨浏览器实例

下面的代码加载并解析一个 XML 字符串:

function parseXML(){text="";text=text+"George";text=text+"John";text=text+"Reminder";text=text+"Don't forget the meeting!";text=text+"";try //Internet Explorer  {  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");  xmlDoc.async="false";  xmlDoc.loadXML(text);  }  catch(e)  {  try // Firefox, Mozilla, Opera, etc.    {    parser=new DOMParser();    xmlDoc=parser.parseFromString(text,"text/xml");    }  catch(e)    {    alert(e.message);    return;    }  }document.getElementById("to").innerHTML=xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue;document.getElementById("from").innerHTML=xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue;document.getElementById("message").innerHTML=xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue;}

W3School.com.cn Internal Note

To: 
From: 
Message: 

登录后复制

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2491814.html

(0)
上一篇 2025年3月5日 00:46:41
下一篇 2025年2月27日 23:28:06

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论