`
devil13th
  • 浏览: 41970 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

js 读取本地 xml

阅读更多
/**
* 封装装载XML的方法,并返回XML文档的根元素节点。
* @param flag true时参数xml表示xml文档的名称;false时参数xml是一个字符串,其内容是一个xml文档
* @param xml 根据flag参数的不同表示xml文档的名称或一个xml文档的字符串表示
*/
function loadXML(flag,xml){
var xmlDoc;
//针对IE浏览器
if(window.ActiveXObject){
var aVersions = ["MSXML2.DOMDocument.6.0", "MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0","MSXML2.DOMDocument.3.0",
"MSXML2.DOMDocument","Microsoft.XmlDom"];
for (var i = 0; i < aVersions.length; i++) {
try {
//建立xml对象
xmlDoc = new ActiveXObject(aVersions[i]);
break;
} catch (oError) {
}
}
if(xmlDoc != null){
//同步方式加载XML数据
xmlDoc.async = false;
//根据XML文档名称装载
if(flag == true){
xmlDoc.load(xml);
} else{
//根据表示XML文档的字符串装载
xmlDoc.loadXML(xml);
}
//返回XML文档的根元素节点。
return xmlDoc.documentElement;
}
} else{
//针对非IE浏览器
if(document.implementation && document.implementation.createDocument){
/*
第一个参数表示XML文档使用的namespace的URL地址
第二个参数表示要被建立的XML文档的根节点名称
第三个参数是一个DOCTYPE类型对象,表示的是要建立的XML文档中DOCTYPE部分的定义,通常我们直接使用null
这里我们要装载一个已有的XML文档,所以首先建立一个空文档,因此使用下面的方式
*/
xmlDoc = document.implementation.createDocument("","",null);
if(xmlDoc != null){
//根据XML文档名称装载
if(flag == true){
//同步方式加载XML数据
xmlDoc.async = false;
xmlDoc.load(xml);
} else{
//根据表示XML文档的字符串装载
var oParser = new DOMParser();
xmlDoc = oParser.parseFromString(xml,"text/xml");
}
//返回XML文档的根元素节点。
return xmlDoc.documentElement;
}
}
}
return null;
}

 

 例子

<?xml version="1.0" encoding="UTF-8"?>
<j2eeQuertion>
<question>
<queInfo>屏蔽TOMCAT中的文件列表</queInfo>
<url>0001.html</url>
</question>
<question>
<queInfo>js读取xml</queInfo>
<url>0002.html</url>
</question>
</j2eeQuertion>

 用法

var contentXML = loadXML(true,xmlUrl);

var que = contentXML.getElementsByTagName("question");

for(var i = 0 ; i < que.length ; i++){ 

var url = que[i].getElementsByTagName("url")[0].firstChild.data;

var tit = que[i].getElementsByTagName("queInfo")[0].firstChild.data;

alert(url);

alert(tit);

}

 注:保存文件的格式为utf-8!

分享到:
评论

相关推荐

    JS读取本地XML(支持IE和火狐)

    JS读取本地XML(支持IE和火狐) 绝对有用,不用弹出允许驱动提示!!!

    JS读取本地XML(支持IE和火狐和Google和Opea)

    JS读取本地XML(支持IE和火狐和Google和Opea),已经测试过,Opea为9.64 for windows 中文版测试

    js获取本地xml

    js获取本地xml var xdoc = new ActiveXObject("Microsoft.XMLDOM"); xdoc.async="true"; xdoc.load('例10-6.XML'); nodes=xdoc.documentElement.childNodes; var txt="&lt;table&gt;"+"&lt;tr&gt;&lt;td&gt;"+nodes.item(0).text+...

    bpmn-moddle:从JavaScript读取和写入BPMN 2.0 XML

    在NodeJS和浏览器中读写BPMN 2.0图表文件。 bpmn-moddle使用来验证输入并生成正确的BPMN 2.0 XML。 用法 通过获取库。 通过UMD在NodeJS中使用它,或使用您喜欢的模块捆绑器将其捆绑在浏览器中。 import ...

    JavaScript 解析读取XML文档 实例代码

    JavaScript解析读取XML文件,主要就是加载并解析XML文件,然后就可以测试解析的XML文件的内容,打印输出来。 在线演示:http://demo.jb51.net/js/2012/readxml/注:测试的时候需要在网站中测试,iis或apache中,注意...

    用ajax函数读取xml,然后解析XML.html

    摘要:脚本资源,Ajax/JavaScript,ajax无刷新读取文件 用ajax函数读取xml,然后解析XML.html,ajax无刷新读取文件,先使用jQuery加载XML,然后建立一个代码片段,遍历所有student节点,获取id节点,获取节点文本,获取...

    用javascript读取xml文件读取节点数据

    下面代码是读取的节点数据,还有一种情况是读取节点属性数据。 &lt;head&gt; &lt;title&gt;&lt;/title&gt; [removed] var objLength = null; var xmlHttp; var strurl = ""; function ajaxrequst() { if ...

    Javascript解析JSON数据

    JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。

    feedreader:用于读取 Telogis XML 提要并实时转换并提交到本地数据库的应用程序

    Feedreader 是一个应用程序,它读取 Telogis 实时 xml 提要并将消息插入到您选择的数据库中。 它使用简单的自定义数据转换将原始消息转换为您需要的几乎任何格式。 有关示例配置和转换,请参阅 config_examples 目录...

    bpmn-python:用于创建Python库的项目,该库允许导入导出BPMN图(作为XML文件)并提供简单的可视化功能

    bpmn-python 用于创建Python库的项目,该库允许导入/导出BPMN图(作为XML文件)并提供简单的可视化功能项目结构bpmn_python-项目的主要模块,包括所有源代码测试-包的单元测试示例-测试中使用的XML文件的示例docs-...

    ldml:使用继承读取 CLDR XML 数据

    Node.js 的 LDML (UNICODE 本地数据标记语言) Unicode 的数据存储在 XML 文件中,并使用非常自定义的继承方案。 有了这个模块,你可以query数据,它会为你做疯狂的继承。 var ldml = require ( "ldml" ) ; ...

    JavaScript完全自学宝典 源代码

    addressbook.war JavaScript+XML实现通讯录的工程文件(可以直接在Tomcat下发布运行)。 addressbook.xml 记录通讯录的XML文件。 第14章(\c14) 示例描述:介绍JavaScript与Microsoft Office互操作的方法。 ...

    D3.js进阶系列之CSV表格文件的读取详解

    D3.js支持从外部读取数据进行图形交互(Loading External Resources),支持的格式有CSV、txt、Html、tsv、xml文本文件和JSON XML数据结构,下面这篇文章主要给大家介绍了D3.js中CSV表格文件读取的相关资料,需要的...

    程序天下:JavaScript实例自学手册

    19.12 JavaScript读取自身文件内的XML 19.13 将XML文件绑定到table 19.14 使用JavaScript加载XML文件 19.15 动态加载JavaScript文件 19.16 防止JavaScript文件被其他站直接引用 19.17 检查机器是否安装Word 19.18 ...

    rdflib.js:用于JavaScript的链接数据API

    读写RDF / XML,Turtle和N3; 读取RDFa和JSON-LD 使用WebDav或SPARQL / Update读取/写入链接数据客户端 通过Web套接字和PATCH进行实时协作编辑 用于查询商店的本地API 与兼容 SPARQL查询(不是完整的SPARQL-仅图...

    cordova-set-version:用于在Apache Cordova config.xml中设置版本的CLI和JavaScript API

    可以从本地package.json读取version 有CLI 安装 $ npm install cordova-set-version 用法 const cordovaSetVersion = require ( 'cordova-set-version' ) ; cordovaSetVersion ( ) ; // reads version from ...

    《程序天下:JavaScript实例自学手册》光盘源码

    19.12 JavaScript读取自身文件内的XML 19.13 将XML文件绑定到table 19.14 使用JavaScript加载XML文件 19.15 动态加载JavaScript文件 19.16 防止JavaScript文件被其他站直接引用 19.17 检查机器是否安装Word 19.18 ...

    JavaScript网页特效范例宝典源码

    实例110 使用toLocaleString()方法获取本地时间 176 实例111 全中文显示日期 176 实例112 在状态栏中显示日期时间 178 实例113 使用数组显示星期 179 实例114 在表格中显示时间 180 实例115 退出页面时显示停留时间 ...

    精通JS脚本之ExtJS框架.part1.rar

    10.1.5 读取本地JSON数据 10.2 树的事件 10.3 右键菜单 10.4 修改节点的默认图标 10.5 从节点弹出对话框 10.6 节点提示信息 10.7 为节点设置超链接 10.8 树形的拖放 10.8.1 节点拖放的3种形式 10.8.2 叶子...

    精通JS脚本之ExtJS框架.part2.rar

    10.1.5 读取本地JSON数据 10.2 树的事件 10.3 右键菜单 10.4 修改节点的默认图标 10.5 从节点弹出对话框 10.6 节点提示信息 10.7 为节点设置超链接 10.8 树形的拖放 10.8.1 节点拖放的3种形式 10.8.2 叶子...

Global site tag (gtag.js) - Google Analytics