XML DOM 高级
什么是 XML DOM ? XML DOM (Document Object Model) 定义了访问和操作 XML 文档的标准方法。
XML DOMDOM 把 XML 文档视为一种树结构。通过这个 DOM 树,可以访问所有的元素,可以修改它们的内容(文本以及属性),而且可以创建新的元素。元素,以及它们的文本和属性,均被视为节点。
在本教程的较早章节中,我们介绍了 XML DOM,并使用了 XML DOM 的 getElementsByTagName() 从 DOM 树中取回数据。
在本节中,我们将讲解一些其他较常用的 XML DOM 方法。在本例中,我们使用 XML 文件 books.xml,并使用一个 JavaScript 函数把 XML 文件加载到名为 xmlDoc 的 DOM 对象中。
如需学习更多有关 XML DOM 的知识,可以学习我们的 XML DOM 教程。
获取元素的值下面的代码检索第一个 title 元素的文本值:
var x=xmlDoc.getElementsByTagName( title )[0].childNodes[0]; var txt=x.nodeValue;
结果:txt = Harry Potter
亲自试一试
获取属性的值下面的代码检索第一个 title 元素的 lang 属性的文本值:
var txt=xmlDoc.getElementsByTagName( title )[0].getAttribute( lang
结果:txt = en
亲自试一试
改变元素的值下面的代码改变第一个 title 元素的文本值:
var x = xmlDoc.getElementsByTagName( title )[0].childNodes[0]; x.nodeValue= Easy Cooking
亲自试一试
改变属性的值setAttribute() 方法可用于改变已有属性的值,或创建一个新属性。
下面的代码向每个 book 元素添加了名为 edition 的新属性(值是 first ):
var x = xmlDoc.getElementsByTagName( book for(i=0;i x.length;i++){ x[i].setAttribute( edition , first
亲自试一试
createElement() 方法创建新的元素节点。
createTextNode() 方法创建新的文本节点。
appendChild() 方法向节点添加子节点(在最后一个子节点之后)。
如需创建带有文本内容的新元素,需要同时创建元素节点和文本节点。
下面的代码创建了一个元素 ( edition ),然后把它添加到第一个 book 元素中:
var newel = xmlDoc.createElement( edition var newtext = xmlDoc.createTextNode( First newel.appendChild(newtext); var x = xmlDoc.getElementsByTagName( book x[0].appendChild(newel);例子解释: 创建 edition 元素 创建值为 First 的文本节点 把这个文本节点追加到 edition 元素 把 edition 元素追加到第一个 book 元素
亲自试一试
removeChild() 方法删除指定的节点(或元素)。
下面的代码片段将删除第一个 book 元素中的第一个节点:
var x = xmlDoc.getElementsByTagName( book )[0]; x.removeChild(x.childNodes[0]);
亲自试一试
注释:上例的结果可能会根据所用的浏览器而不同。Firefox 把新行字符当作空的文本节点,而 Internet Explorer 不是这样。您可以在 w3school 的 XML DOM 教程中阅读到更多有关这个问题以及如何避免它的知识。
这里提供的 XML DOM 实例,只向您展示了少数几项我们可以利用 XML DOM 完成的工作。
如需学习更多有关 XML DOM 的知识,请访问 w3school 的 XML DOM 教程。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/59681.html
FireFoxjavaphp相关文章
- Mabatis 源码探究(2)Java 获取mybatis-config.xml的输入流 inputStream对象
- XML概念定义以及如何定义xml文件编写约束条件java解析xml DTD XML Schema JAXP java xml解析 dom4j 解析 xpath dom sax详解编程语言
- Linux读取XML文件的快速方法(linux读取xml文件)
- Oracle 视图 ALL_XML_TAB_COLS 官方解释,作用,如何使用详细说明
- Java数据持久层框架 MyBatis之API学习六(Mapper XML 文件详解)编程语言
- [代码]比较XML文件差异[cl_proxy_ui_utils=>show_xml_diff]详解编程语言
- XML DOM 高级
- 如何使用MySQL导出XML文件?(mysql导出xml)
- XML 查看
- 轻松学习:Linux如何修改XML文件(linux修改xml)
- MSSQL 中 XML 查询的实践(mssql查询xml)
- MySQL中如何使用XML进行数据判断(mysql中xml判断)
- MySQL中如何使用XML(mysql中xml)
- Oracle中高效处理XML的方法(oracle中处理xml)
- 深入了解MySQL XML数据库,优化数据存储与检索(mysql xml数据库)
- 使用MySQL的XML函数解析数据(mysql xml函数)
- XML轻松学习手册(1)XML快速入门
- 使用XML实现BBS(主题列表篇)
- PHP和JAVA的XML-RPC中文问题解决办法
- asp.net读取xml文件里面的内容,绑定到dropdownlist中
- 一个很方便的XML类!!原创的噢
- 报错:XML页无法显示,下列标记没有被关闭解决方法
- 兼容Firefox的JavascriptXSLT处理XML文件