使用JS读取XML文件的方法
由于项目上需要解析xml,于是各种百度,然后自己总结了下各个主流浏览器解析xml的方法,只能是很浅显的知道他的用法,但是还没有深层次的研究。
不同的浏览器对xml的解析方式不同,根据目前主流浏览器大致分三类:
第一类,ie祖宗: js 提供用于创建 Automation对象的方法,new ActiveXObject("Microsoft.XMLDOM") ;
第二类:firefox,opera:用构造函数 DOMParser()实例化DOMParser对象,解析xml文本,并返回xml Document对象;
第三类:chrome,safari:由于chrome不支持load方法,故用http协议,XMLHttpRequest对象。
代码:
function loadXML(){ var xmlDoc; try{ //IE xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); }catch(e){ //firefox,opera xmlDoc = document.implementation.createDocument("","",null); } try{ xmlDoc.asyc = false; //是否异步调用 xmlDoc.load("xxx.xml"); //文件路径 }catch(e){ //chrome var xmlhttp = new window.XMLHttpRequest(); xmlhttp.open("GET","xxx.xml",false); //创建一个新的http请求,并指定此请求的方法、URL以及验证信息 xmlDoc = xmlhttp.responseXML; } return xmlDoc; }
返回的xmlDoc对象,其中属性documentElement包含了xml节点的各种值,可以console出来慢慢找。
ps:如果是读取本地xml,chrome默认是禁止访问本地文件,需要增加启动参数 --allow-file-access-from-files。
以上所述是小编给大家介绍的使用JS读取XML文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
javascript实现加载xml文件的方法
本文实例讲述了javascript加载xml文件的方法.分享给大家供大家参考,具体如下: //需要读取的xml文件 var uRl = "jsReadXml.xml"; var xmlDoc; //初始化,给上述定义变量赋值 // function showcurcity(){ if(window.ActiveXObject) { xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async="fal
-
JS操作XML实例总结(加载与解析XML文件、字符串)
本文实例讲述了JS操作XML的方法.分享给大家供大家参考,具体如下: 我的xml文件Login.xml如下. <?xml version="1.0" encoding="utf-8" ?> <Login> <Character> <C Text="热血" Value="0"></C> <C Text="弱气" Value="1&qu
-
jQuery解析XML文件同时动态增加js文件的方法
本文实例讲述了jQuery解析XML文件同时动态增加js文件的方法.分享给大家供大家参考.具体实现方法如下: $(function(){ $.ajax({ url: 'js/config/jsConfig.xml', dataType: 'xml', success: function(data){ $(data).find("moduleName").each(function(i,obj) { var field = $(this); var funcName = field.at
-
JS实现加载和读取XML文件的方法详解
本文实例讲述了JS实现加载和读取XML文件的方法.分享给大家供大家参考,具体如下: 有时在开发时用到 JS 加载和读取XML文件的情况,写下提供参考,这里主要是分两步完成: 1. JS加载XML文件 步骤一般为(1),建立 XML DOM 对象:(2),设置加载方式,异步(推荐)或同步: (3)提供XML文件URL然后调用 load 方法:大致如下: var xmlFileName="xxFile.xml"; var xmlDoc=''; if (window.ActiveXObjec
-
JS读取XML文件示例代码
复制代码 代码如下: //读取XML文件 function loadXML(xmlFile) { var xmlDoc; if (window.ActiveXObject) { xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); xmlDoc.async = false; xmlDoc.load(xmlFile); } else if (document.implementation && document.implement
-
JS与jQ读取xml文件的方法
废话不多说了,直接给大家贴代码了,具体代码如下所示: jquery读取xml文件 <!DOCTYPE html PUBLIC "-//WC//DTD XHTML . Transitional//EN" "http://www.w.org/TR/xhtml/DTD/xhtml-transitional.dtd"> <html xmlns="http://www.w.org//xhtml"> <head> <
-
用javascript读取xml文件读取节点数据
下面代码是读取的节点数据,还有一种情况是读取节点属性数据. <head> <title></title> <script type="text/javascript"> var objLength = null; var xmlHttp; var strurl = ""; function ajaxrequst() { if (window.ActiveXObject) { xmlHttp = new ActiveXO
-
jsp读取大对象CLOB并生成xml文件示例
<%@ page contentType="text/html; charset=gb2312" %> <%@ page info="database handler"%> <%@ page import="java.io.*"%> <%@ page import="java.net.*"%> <%@ page import="java.lang.*"%
-
JS使用ajax从xml文件动态获取数据显示的方法
本文实例讲述了JS使用ajax从xml文件动态获取数据显示的方法.分享给大家供大家参考.具体分析如下: 下面的JS代码通过ajax检索xml文件的内容动态展示到网页,真个页面无刷新 <!DOCTYPE html> <html> <head> <script> function loadXMLDoc(url) { var xmlhttp; var txt,x,xx,i; if (window.XMLHttpRequest) {// code for IE7+,
-
JS解析XML文件和XML字符串详解
JS解析XML文件 <script type='text/javascript'> loadXML = function(xmlFile){ var xmlDoc=null; //判断浏览器的类型 //支持IE浏览器 if(!window.DOMParser && window.ActiveXObject){ var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.
-
JavaScript操作XML文件之XML读取方法
本文实例讲述了JavaScript操作XML文件之XML读取方法.分享给大家供大家参考.具体分析如下: 假设我们现在要读取下面的 info.xml 文件 <?xml version="1.0" encoding="gb2312"?> <root> <data id="1"> <name>ceun</name> <age>21</age> </data>
-
javascript读取Xml文件做一个二级联动菜单示例
复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>menu2level.html</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> &
-
IE下JS读取xml文件示例代码
使用JS读取xml文件,这里暂只考虑IE浏览器 step1 创建DOM对象 复制代码 代码如下: function createDom() { var xmlDoc = null; try { //IE if (typeof arguments.callee.activeXString != 'string') { var versions = [ "MSXML2.DOMDocument.6.0", "MSXML2.DOMDocument.3.0", "M
随机推荐
- mysql 5.7 安装配置方法图文教程
- 最快捷登陆ssh 服务器的方法
- bilibili弹幕转ass程序制作思路及过程
- JS实现问卷星自动填问卷脚本并在两秒自动提交功能
- php 面向对象的一个例子
- PHP 用数组降低程序的时间复杂度
- Android中Activity启动默认不显示输入法解决方法
- Oracle Faq(Oracle的字符集问题)
- Access数据库中“所有记录中均未找到搜索关键字”的解决方法
- MySQL中在查询结果集中得到记录行号的方法
- Shell实现文本去重并操持原有顺序
- php array_flip() 删除数组重复元素
- javascript eval()应用实例 select
- VC下通过系统快照实现进程管理的方法
- 浅谈jquery.fn.extend与jquery.extend区别
- 6款经典实用的jQuery小插件及源码(对话框/提示工具等等)
- IIS7 经典模式和集成模式的区别分析
- 局域网“内鬼” 非授权DHCP服务器防范策略第1/3页
- 图文详解Linux服务器搭建JDK环境
- Java观察者设计模式详解