zoukankan      html  css  js  c++  java
  • JavaScript 解析xml字符串

    续js解析xml文件,下面笔记是js解析xml字符串与文件的不同

     loadXML = function(xmlString){
    var xmlDoc=null;
    //判断浏览器的类型
    //支持IE浏览器
    if(!window.DOMParser && window.ActiveXObject){ //window.DOMParser 判断是否是非ie浏览器
    var xmlDomVersions = ['MSXML.2.DOMDocument.6.0','MSXML.2.DOMDocument.3.0','Microsoft.XMLDOM'];
    for(var i=0;i<xmlDomVersions.length;i++){
    try{
    xmlDoc = new ActiveXObject(xmlDomVersions[i]);
    xmlDoc.async = false;
    xmlDoc.loadXML(xmlString); //注!loadXML方法载入xml字符串,不同处
                        break;
                    }catch(e){
    }
    }
    }
    //支持Mozilla浏览器
    else if(window.DOMParser && document.implementation && document.implementation.createDocument){
    try{
    /* DOMParser 对象解析 XML 文本并返回一个 XML Document 对象。
    * 要使用 DOMParser,使用不带参数的构造函数来实例化它,然后调用其 parseFromString() 方法
    * parseFromString(text, contentType) 参数text:要解析的 XML 标记 参数contentType文本的内容类型
    * 可能是 "text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一个。注意,不支持 "text/html"。
    */
    domParser = new DOMParser();
    xmlDoc = domParser.parseFromString(xmlString, 'text/xml');
    }catch(e){
    }
    }
    else{
    return null;
    }

    return xmlDoc;
    }
    getXmlContent = function(xmlstr,xPath){
    var xmlStr=xmlstr;
    var xmlDoc = loadXML(xmlStr);
    var n;
    var l;
    if(xmlDoc!=null){
    n = xmlDoc.getElementsByTagName(xPath);
    l = n.length;
    //循环添加列表子项
    for(var i=0;i<l;i++){
    document.write(n[i].childNodes[0].firstChild.nodeValue);
    document.write("<br />");
    document.write(n[i].getElementsByTagName("grade")[0].firstChild.nodeValue);
    document.write("<br />");
    document.write(n[i].getElementsByTagName("ranklist")[0].firstChild.nodeType);

    }
    }

    }




  • 相关阅读:
    字蛛webfont 安装及使用方法
    二级菜单被banner遮住的解决方法
    空a标签在IE下无效之解决方法
    wamp新建虚拟目录无法运行的解决方法
    js中this关键字用法详解
    css3新特性
    css手册中各种符号的意思
    gradient 渐变
    ie6-ie8中不支持opacity透明度的解决方法
    mysql给定一个随机数
  • 原文地址:https://www.cnblogs.com/gfqFighting/p/2377335.html
Copyright © 2011-2022 走看看