关闭

js读取xml文件

标签: xmljs
269人阅读 评论(0) 收藏 举报

代码:

<!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>

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>


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:123533次
    • 积分:1997
    • 等级:
    • 排名:第19524名
    • 原创:28篇
    • 转载:314篇
    • 译文:1篇
    • 评论:2条
    最新评论