/**
* 封装装载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!
分享到:
相关推荐
在JavaScript中,读取本地XML文件是一个常见的需求,特别是在处理数据交换或页面动态加载内容时。这个场景下,我们关注的重点是如何在不依赖用户权限提示的情况下,使用JS在Internet Explorer(IE)和Firefox这两个...
在JavaScript中,读取本地XML文件是一个常见的任务,特别是在处理数据或者构建动态Web应用程序时。由于浏览器的安全策略,直接访问本地文件系统通常是被禁止的,但可以通过特定的技术和API来实现这一目标。以下是对...
js获取本地xml var xdoc = new ActiveXObject("Microsoft.XMLDOM"); xdoc.async="true"; xdoc.load('例10-6.XML'); nodes=xdoc.documentElement.childNodes; var txt="<table>"+"<tr><td>"+nodes.item(0).text+...
在JavaScript(简称JS)中,读取本地Excel文件并将其数据在网页上以表格形式展示是一种常见的需求,尤其是在Web应用程序中处理用户上传的数据时。为了实现这个功能,我们需要借助一些库和API,因为浏览器本身并不...
总的来说,通过JavaScript读取XML文件需要异步加载XML数据,然后使用DOM解析XML字符串。在实际项目中,还可以考虑使用jQuery、axios等库来简化XML处理。同时,理解XML和DOM的概念对于JavaScript开发者来说是非常重要...
常见的本地解析XML的库有Java的DOM和SAX,Python的ElementTree,JavaScript的DOMParser等。 4. CLOB字段与XML数据: CLOB(Character Large Object)是数据库中用于存储大量字符数据的类型,常用于存储XML文档。当...
综上所述,通过PHP和XML的结合,我们可以实现对XML文件的读写操作,并在HTML页面中展示XML数据。压缩包中的"phpxml"文件可能包含了这些功能的实现代码,你可以参考这些代码加深理解并应用于实际项目中。
总结,JavaScript读取XML主要依赖XMLDOM和DOM API,或者利用jQuery等库简化操作。理解这些概念和技术,能帮助开发者有效地处理XML数据,实现数据的动态加载和展示。在实际项目中,结合JSON使用可以提高效率和便利性...
本例子将展示如何使用jqGrid从本地XML文件中读取数据并显示在一个表格中。 首先,我们来看`index.html`或`testjq.html`这两个HTML文件,它们是网页的主体部分。通常,这两个文件会包含jqGrid所需的CSS和JS文件引用...
标题与描述均提到了“js读取xml文件”,这表明文章的主题聚焦于如何利用JavaScript(JS)语言处理XML数据。XML(Extensible Markup Language,可扩展标记语言)是一种用于存储和传输数据的标准格式,而JavaScript则...
JavaScript是一种广泛应用于网页和网络应用的...然而,由于跨域限制,直接在浏览器环境中读写本地文件可能需要借助Web存储、File API或服务器端支持。了解并熟练运用这些技术,可以帮助开发者构建更强大的Web应用程序。
3. **使用FileReader API**:如果用户手动选择文件,可以使用FileReader API读取和处理本地XML或XLS文件,但这需要用户交互。 4. **转换文件格式**:对于XLS文件,可以考虑将其转换为CSV或JSON格式,这些格式更易于...
在Web开发中,AJAX(Asynchronous JavaScript and XML)是一种创建动态网页的技术,它允许页面在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容。然而,由于浏览器的安全策略,AJAX默认无法直接访问...
1. **本地文件读取**:在现代浏览器中,可以使用`FileReader` API来读取本地XML文件。用户通过`<input type="file">`选择文件后,我们可以监听`change`事件,获取选中的文件,并使用`FileReader`的`readAsText()`...
总的来说,"unigui_ajax读取本地文件信息"涉及的关键知识点包括:Unigui框架的使用、Ajax技术、JavaScript的FileReader API、客户端与服务器的异步通信、文件上传的安全处理以及后台服务端的文件处理逻辑。...
在本文中,我们将深入探讨如何在Spring Boot应用中读取本地JSON文件,这是一个常见的后端开发任务,尤其在处理配置数据或进行数据测试时。Spring Boot以其简洁的配置和强大的功能,使得Java开发者能轻松地构建微服务...
在JavaScript和jQuery的世界里,处理XML数据并将其转换为TXT文件是常见的需求,尤其是在需要将数据从服务器传输到客户端,或者在本地存储用户数据时。本文将深入探讨如何使用这两种强大的工具来完成这个任务。 首先...
AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下更新部分网页内容的技术。在本场景中,我们将探讨如何使用AJAX来读取本地的文本文档内容,并将其展示在网页上。这个功能在现代Web应用...
- 数据存储:在本地存储XML文件,通过JavaScript读取和更新。 - 配置文件:JavaScript应用可能使用XML文件作为配置信息。 在提供的压缩包文件中,`index.jsp`可能是包含JavaScript代码的网页,`myaddresshtml.rar...
首先,让我们回顾一下遇到的问题:在本地开发时,我们可能直接使用了文件系统的绝对路径来读取XML文件,但这种方法在部署到服务器上时会失效,因为浏览器出于安全原因不允许直接访问服务器的文件系统。因此,我们...