XML DOM 遍历Xml文档

1.xml文档内容:

<?xml version="1.0" encoding="utf-8" ?>
<bookstore>

  <book category="children">
    <title lang="en">Harry Potter</title>
    <author>J K. Rowling</author>
    <year>2005</year>
    <price>29.99</price>
  </book>

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

  <book category="web">
    <title lang="en">Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
  </book>

  <book category="web">
    <title lang="en">XQuery Kick Start</title>
    <author>James McGovern</author>
    <author>Per Bothner</author>
    <author>Kurt Cagle</author>
    <author>James Linn</author>
    <author>Vaidyanathan Nagarajan</author>
    <year>2003</year>
    <price>49.99</price>
  </book>

</bookstore>

XML文档内容

2.封装解析xml文档函数到loadxmldoc.js文件中

function loadXMLDoc(dname)
{
try //Internet Explorer
  {
  xmlDoc=new ActiveXObject("Microsoft.XMLDOM");//创建空的微软xml文档对象
  }
catch(e)
  {
  try //Firefox, Mozilla, Opera, etc.
    {
    xmlDoc=document.implementation.createDocument("","",null);//其他浏览器通过解析器创建xml文档对象
    }
  catch(e) {alert(e.message)}
  }
try
  {
  xmlDoc.async=false;//关闭异步加载,确保文档加载完之前解析器不会继续执行脚本
  xmlDoc.load(dname);//加载文档
  return(xmlDoc);//返回xml文档对象
  }
catch(e) {alert(e.message)}
return(null);
}

3.遍历xml文档下所有节点

<script type="text/javascript" src="Scripts/loadxmldoc.js">//引入loadxmldoc.js文件
</script>

<script type="text/javascript">
    xmlDoc = loadXMLDoc("books.xml");//创建文档对象
    x = xmlDoc.documentElement.childNodes;//获取根节点下的子节点
    for (i = 0; i < x.length; i++) {
        if (1==x[i].nodeType){//是否为元素节点
            document.write(x[i].nodeName);//标签名
            document.write("<br/>");
            y = x[i].childNodes;//获取子节点
            for (j = 0; j < y.length; j++) {
                if (1==y[j].nodeType) {//是元素节点
                    document.write(y[j].nodeName);//标签名
                    document.write(":");
                    document.write(y[j].childNodes[0].nodeValue);//文本
                    document.write("<br/>");
                }
            }
            document.write("<br/>");
        }
    }

</script>

XML DOM 遍历Xml文档

时间: 2024-08-01 18:39:37

XML DOM 遍历Xml文档的相关文章

XML概念,约束文档,解析 笔记

XML的学习: 1.XML简介及语法: 2.XML的约束: DTD Schema 3.XML的解析:(*****重点) XML: What:eXtensible Markup Language(可扩展的标记语言.) <dog></dog> * HTML:超文本标记语言. 标记语言 :都会有一些标签.<html></html> <p></p> Why: * 用来处理大量有关系的数据. Where: * 用来作为软件的配置文件(SSH--

xml和xsd架构文档相关知识

1.使用架构(XSD)验证XML文件 2.使用自动生成工具: 工具目录:C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools 工具名称:xsd.exe 使用帮助:生成xml架构文档xsd-->拷贝xml文件到工具目录下,打开命令工具,进入该目录,执行命令:xsd myFile.xml 生成xsd架构文档相关类-->执行命令:xsd /c/language:CS XSDSchemaFile.xsd 更多详细

javascript DOM操作HTML文档

文档对象模型(DOM)是W3C为解决浏览器混战时代不同浏览器环境之间的差别而制定的模型标准.W3C将文档对象模型定义为:是一个能让程序和脚本动态 访问和更新文档内容.结构和样式的语言平台.提供了标准的HTML和XML对象集,并有一个标准接口来访问并操作他们,即任何一个 html 元素可以使用 JavaScript DOM 动态访问和控制. 1. DOM概述 文档对象模型定义了JavaScript可以进行操作的浏览器,描述了文档对象的逻辑结构及各个功能组件的标准接口.主要包括以下内容: 核心Jav

JS复习—Dom脚本化文档

Dom脚本化文档 一.选取文档元素 (1)用指定的id属性 var section1 = document.getElementsById('section1'); 注意:在低于IE8的浏览器中,getElementById()对匹配元素的Id不分大小写,也返回匹配name的元素. (2)用指定的name属性 定义:name属性只存在少数的HTML元素,包括表单.表单元素.<iFrame>和<img>元素 var radioButtons = document.getElement

Java读取、创建xml(通过dom方式)文档版

Java读取.创建xml(通过dom方式) 1.创建一个DocumentBuilderFactory的实例dbf DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); 2.通过dbf创建一个DocumentBuilder 出来db  DocumentBuilder db = dbf.newDocumentBuilder(); 3.利用db解析文档赋值给Document对象  Document document = d

XML概念,约束文档,解析

day01总结 今日内容 l XML语法 l XML约束之DTD l XML解析器介绍 l XML解析之JAXP( DOM.SAX ) l DOM4J l Schema 一.XML语法 XML概述 1 什么是XML XML全称为Extensible Markup Language, 意思是可扩展的标记语言,它是 SGML(标准通用标记语言)的一个子集. XML语法上和HTML比较相似,但HTML中的元素是固定的,而XML的标签是可以由用户自定义的. W3C在1998年2月发布1.0版本: W3C

XML之DTD(文档类型定义)

文档类型定义(DTD)可定义合法的XML文档构建模块.它使用一系列合法的元素来定义文档的结构. DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用. 声明元素 在 DTD 中,XML 元素通过元素声明来进行声明.元素声明使用下面的语法: <!ELEMENT 元素名称 类别>  [类别可为:EMPTY.(#PCDATA).ANY] 或者 <!ELEMENT 元素名称 (元素内容)> 带有 DTD 的 XML 文档实例 <?xml version="1.0&

WebAPI使用多个xml文件生成帮助文档

一.前言 上篇有提到在WebAPI项目内,通过在Nuget里安装(Microsoft.AspNet.WebApi.HelpPage)可以根据注释生成帮助文档,查看代码实现会发现是基于解析项目生成的xml文档来作为数据源从而展示出来的.在我们的项目帮助文档需要的类(特指定义的Request和Response)与项目在同一个项目时是没有问题的,但是我们实际工作中会因为其他项目也需要引用该(Request和Response)时,我们会将其抽出来单独作为一个项目供其它调用来引用,这时,查看帮助文档不会报

【转】WebAPI使用多个xml文件生成帮助文档

来自:http://www.it165.net/pro/html/201505/42504.html 一.前言 上篇有提到在WebAPI项目内,通过在Nuget里安装(Microsoft.AspNet.WebApi.HelpPage)可以根据注释生成帮助文档,查看代码实现会发现是基于解析项目生成的xml文档来作为数据源从而展示出来的.在我们的项目帮助文档需要的类(特指定义的Request和Response)与项目在同一个项目时是没有问题的,但是我们实际工作中会因为其他项目也需要引用该(Reque