原生js获取xml标签的值?

请教一下,如下图,我返回的ret是xml格式:
clipboard.png

然后,我要获取Location标签的值该怎么获取呀?
clipboard.png

要原生js的,不要jq,在此谢过哈!

阅读 5.5k
2 个回答
    <script type="text/javascript">
        
        // 传入xml 字符串,返回DOM 树
        function parseXML(ret){
            var xmlDoc = null;
            try //Internet Explorer
                {
                    xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
                    xmlDoc.async="false";
                    xmlDoc.loadXML(ret);
                }
            catch(e){
                try //Firefox, Mozilla, Opera, etc.
                {
                    parser=new DOMParser();
                    xmlDoc=parser.parseFromString(ret,"text/xml");
                }
                catch(e) {alert(e.message)}
            }
            return xmlDoc;
        }
        
        // 在你回调函数里面调用
        var dom = parseXML(ret);
        // location 标签的内容使用DOM选择器进行查找
        var locationText = dom.querySelector('Location').innerHTML;
        console.log(locationText);
    </script>
新手上路,请多包涵
<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.XMLDOM'];
            for(var i=0;i<xmlDomVersions.length;i++){
                try{
                    xmlDoc = new ActiveXObject(xmlDomVersions[i]);
                    break;
                }catch(e){
                }
            }
        }
        //支持Mozilla浏览器
        else if(document.implementation && document.implementation.createDocument){
            try{
                /* document.implementation.createDocument('','',null); 方法的三个参数说明
                 * 第一个参数是包含文档所使用的命名空间URI的字符串; 
                 * 第二个参数是包含文档根元素名称的字符串; 
                 * 第三个参数是要创建的文档类型(也称为doctype)
                 */
                xmlDoc = document.implementation.createDocument('','',null);
            }catch(e){
            }
        }
        else{
            return null;
        }

        if(xmlDoc!=null){
            xmlDoc.async = false;
            xmlDoc.load(xmlFile);
        }
        return xmlDoc;
    }
</script>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题