zoukankan      html  css  js  c++  java
  • javascript xml字符串转为json对象

    var xmlStr = '<?xml version="1.0" encoding="utf-8" ?><config><name>potatog</name><age>18</age><sex><man>1</man><wman>0</wman></sex></config>';

    var jsonObj = xmlStrToJsonObj(xmlStr);

    function xmlStrToJsonObj(xmlStr) {
        var xmlObj = xmlStrToXmlObj(xmlStr);
        var jsonObj = {};
        if (xmlObj.childNodes.length > 0) {
            jsonObj = xmlObjToJsonObj(xmlObj.childNodes);
        }
        return jsonObj;
    }

    function xmlStrToXmlObj(xmlStr) {
        var xmlObj = {};
        if (document.all) {
            var xmlDom = new ActiveXObject("Microsoft.XMLDOM");
            xmlDom.loadXML(xmlStr);
            xmlObj = xmlDom;
        } else {
            xmlObj = new DOMParser().parseFromString(xmlStr, "text/xml");
        }
        return xmlObj;

    }

    function xmlObjToJsonObj(xmlNodes) {

        var obj = {};
        if (xmlNodes.length == 0) {
            obj = '';
        } else {
            for (var i = 0; i < xmlNodes.length; i++) {
                var node = xmlNodes[i];
                if (typeof node.tagName == "undefined" || node.nodeName == "#text") {
                    obj = node.nodeValue;
                } else {
                    var key = node.tagName;
                    var value = xmlObjToJsonObj(node.childNodes)
                    obj[key] = value;
                }


            }

        }
        return obj;
    }

  • 相关阅读:
    一个cs架构的在线考试系统
    TreeComboBox控件范例
    new和override修饰符的区别
    Hello cnblogs
    MapInfo图层坐标系统转换
    C#调用新浪微博API生成RSS资源文件
    MapInfo图层格式转ArcGIS图层格式
    用ArcGIS的ArcToolbox进行地图切割
    VS2008智能提示消失的解决方法
    【学习笔记】零基础C#窗口程序开发入门
  • 原文地址:https://www.cnblogs.com/potatog/p/10659181.html
Copyright © 2011-2022 走看看