js里各浏览器解析XML,支持IE、火狐、Chrome等

js在chrome中加载XML,js加载XML支持ff,IE6+,Opera等浏览器

 

见代码:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>js里各浏览器解析XML,支持IE、火狐、Chrome等</title>
</head>
<body>
    <script>
        function loadxmlDoc(file){
            try{
                //IE
                xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
            }catch(e){
                ////Firefox, Mozilla, Opera, etc
                xmlDoc=document.implementation.createDocument("","",null);
            }

            try{
                xmlDoc.async=false;
                xmlDoc.load(file);//chrome没有load方法
            }catch(e){
                //针对Chrome,不过只能通过http访问,通过file协议访问会报错
                var xmlhttp = new window.XMLHttpRequest();
                xmlhttp.open("GET",file,false);
                xmlhttp.send(null);
                xmlDoc = xmlhttp.responseXML.documentElement;
            }
            return xmlDoc;
        }

        var ob=loadxmlDoc("stu.xml");
        var stu=ob.getElementsByTagName("stu");
        for(var i=0;i<stu.length;i++){
            var  data=stu[i].childNodes;
            for(var j=0;j<data.length;j++){
                if(data[j].nodeType==1){
                    if(document.all)
                        document.write(data[j].text+" ");//IE
                    else
                        document.write(data[j].textContent+" ");
                }
            }
            document.write("<br/>");
        }
    </script>
</body>
</html>

 

 

附stu.xml

<?xml version="1.0" encoding="UTF-8"?>
<stulist>
    <stu>
        <name>张三</name>
        <age>20</age>
        <sex>男</sex>
        <classid>lamp87</classid>
    </stu>
    <stu>
        <name>李四</name>
        <age>22</age>
        <sex>女</sex>
        <classid>lamp86</classid>
    </stu>
    <stu>
        <name>王五</name>
        <age>21</age>
        <sex>女</sex>
        <classid>lamp87</classid>
    </stu>
     <stu>
        <name>王五</name>
        <age>21</age>
        <sex>女</sex>
        <classid>lamp87</classid>
    </stu>
    <stu>
        <name>赵六</name>
        <age>24</age>
        <sex>男</sex>
        <classid>lamp88</classid>
    </stu>
</stulist>
时间: 2025-01-23 09:58:26

js里各浏览器解析XML,支持IE、火狐、Chrome等的相关文章

JS实现兼容各浏览器解析XML文档数据的方法_javascript技巧

本文实例讲述了JS实现兼容各浏览器解析XML文档数据的方法.分享给大家供大家参考.具体分析如下: 网站上很多用JS解析XML文档的资料或多或少都有点问题, 以下是自己总结的代码,用来解析XML文档,兼容各个浏览器. parseXMLDOM.js代码: /* * 纯JS解析XML文档(兼容各个浏览器) */ function parseXMLDOM(){ var _browserType = ""; var _xmlFile = ""; var _XmlDom = n

JS实现兼容各浏览器解析XML文档数据的方法

  本文实例讲述了JS实现兼容各浏览器解析XML文档数据的方法.分享给大家供大家参考.具体分析如下: 网站上很多用JS解析XML文档的资料或多或少都有点问题, 以下是自己总结的代码,用来解析XML文档,兼容各个浏览器. parseXMLDOM.js代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43

JS实现的跨浏览器解析XML文件实例_javascript技巧

本文实例讲述了JS实现的跨浏览器解析XML文件的方法.分享给大家供大家参考,具体如下: 下列代码把一个 XML 文档 ("note.xml") 载入 XML 解析器中: <script type="text/javascript"> function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(

JS解析XML文件和XML字符串详解

 JS解析XML文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 <script type='text/javascript'> loadXML = function(xmlFile){ var xmlDoc=null; //判断浏览器的类型 //支持IE浏览器 if(!window.DOMParser && windo

js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)_javascript技巧

分别针对ie和火狐分别作了对xml文档和xml字符串的解析,所有代码都注释掉了,想看哪部分功能,去掉注释就可以了. 至于在ajax环境下解析xml,其实原理是一样的,只不过放在了ajax里,还是要对返回的xml进行解析. 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <

JS解析XML文件和XML字符串详解_javascript技巧

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-JS里报错对象不支持“ReceiveData”属性或方法

问题描述 JS里报错对象不支持"ReceiveData"属性或方法 对象不支持"ReceiveData"属性或方法 并不知道要PO什么 需要PO什么你告诉我 我PO出来 大神求指导 解决方案 看看什么库缺少了,没有定义 解决方案二: 把这个对象所有属性打印出来看看,是否有这个方法,属性.调用对了吗 解决方案三: js中对象不支持此属性或方法js 对象不支持此属性或方法js 对象不支持此属性或方法----------------------

兼容IE、FireFox、Chrome等浏览器的xml处理函数js代码_javascript技巧

在编写处理xml的网页时,经常为浏览器兼容性头疼.于是我将常用的xml操作封装为函数.经过一段时间的改进,现在已经很稳定了,用起来很舒服. 函数有-- xml_loadFile:xml同步/异步加载. xml_transformNode:xsl转换. xml_text:节点的文本. selectSingleNode:根据XPath选择单个节点. selectNodes:根据XPath选择多个节点. 全部代码(zyllibjs_xml.js)-- 复制代码 代码如下: /* zyllibjs_xm

JS操作XML实例总结(加载与解析XML文件、字符串)_javascript技巧

本文实例讲述了JS操作XML的方法.分享给大家供大家参考,具体如下: 我的xml文件Login.xml如下. <?xml version="1.0" encoding="utf-8" ?> <Login> <Character> <C Text="热血" Value="0"></C> <C Text="弱气" Value="1&qu