• jQuery解析xml的两种方法


    第一种方案(最稳妥):

    先将String格式的xml转换为xml对象,然后再用Jquery解析xml对象

    var returnDataXml = parseXML(returnData);
    var param = $(returnDataXml).find("param");
    for(i=0;i<param .length;i++){
        var paramName = $(param[i]).attr("name");
        var rDescription = $(param[i]).attr("rDescription");
        var format = $(param [i]).attr("format");
    }
    
    function parseXML (xmlStr) {
        if(typeof($.browser)== "undefined"){
            if (!!navigator.userAgent.match(/Trident/7./)){// IE11
                xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
                xmlDoc.async = "false";
                xmlDoc.loadXML(xmlStr);
            }else{
                var parser = new DOMParser();
                xmlDoc = parser.parseFromString(xmlStr, "text/xml");
            }
        }else{
           if($.browser.msie){// IE
                xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
                xmlDoc.async = "false";
                xmlDoc.loadXML(xmlStr);
            }else{// Other
                var parser = new DOMParser();
                xmlDoc = parser.parseFromString(xmlStr, "text/xml");
            }
        }
        return xmlDoc;
    }

    第二种方案:

    直接使用Jquery的$.find()解析String格式的xml。

    JQUERY可以将一段字符串转成XML的对象,进而可以使用find()方法对该字符串转成的XML进行节点操作。

    注意:此方法不适用于IE9以下的IE浏览器。原因在于:IE中解析出来的是text对象。

    var param = $(returnDataXml).find("param");
    for(i=0;i<param .length;i++){
        var paramName = $(param[i]).attr("name");
        var rDescription = $(param[i]).attr("rDescription");
        var format = $(param [i]).attr("format");
    }
    returnData的xml:
    <params><param name='搜索' orderby='2' format='类型' rDescription='描述'></param></params>

    https://www.runoob.com/jquery/misc-parsexml.html



  • 相关阅读:
    线段树套线段树
    hdu6800
    半平面交 poj1279
    Unity:创建了一个自定义的找子物体的脚本
    Unity:一个简单的开门动画
    hdu 4940
    hdu 4939
    hdu 4932
    hdu 4912
    AC自动机
  • 原文地址:https://www.cnblogs.com/xiejn/p/13972931.html
Copyright © 2020-2023  润新知