zoukankan      html  css  js  c++  java
  • js中对XML的处理

    以下总结多数取自于mxGraph源代码

    一、创建空的XML document对象

     function createXmlDocument()
        {
            var doc = null;
            
            if (document.implementation && document.implementation.createDocument)
            {
                doc = document.implementation.createDocument('', '', null);
            }
            else if (window.ActiveXObject)
            {
                doc = new ActiveXObject('Microsoft.XMLDOM');
             }
             
             return doc;
        }

    二、从xml字符串中解析xml,返回xml document对象

    function parseXML(xml)//xml是字符串表示的xml
    {
        if(navigator.userAgent.indexOf('MSIE') >= 0)  //IE
       { 
                    var doc = null;
            
            if (document.implementation  && document.implementation.createDocument)
            {
                doc = document.implementation.createDocument('', '', null);
            }
            else if (window.ActiveXObject)
            {
                doc = new ActiveXObject('Microsoft.XMLDOM');
             }
               doc.async = 'false';
               doc.loadXML(xml);
               return doc;
        }else 
        {
               var parser = new DOMParser();        
           return parser.parseFromString(xml, 'text/xml');
         }
    }

    三、xml document对象的作用

    接下来,就可以使用这个对象来查找所需的信息了。

    var xmlDocument=parseXML(xml);

    var node=xmlDocument.documentElement;//这个就是根节点了。

    四、其他

    判断给定的对象是否是xml 节点,是否某个属性值为某个值

     function isNode(value, nodeName, attributeName, attributeValue)
         {
             if (value != null && !isNaN(value.nodeType) && (nodeName == null ||
                 value.nodeName.toLowerCase() == nodeName.toLowerCase()))
             {
                 return attributeName == null ||
                     value.getAttribute(attributeName) == attributeValue;
             }
             
             return false;
         }

     

  • 相关阅读:
    如何在linux下解压缩rar格式的文件压缩包
    CentOS-6.3安装配置SVN
    codeblock 设置背景颜色
    leetcode[55] Merge Intervals
    leetcode Jump Game
    leetcode Spiral Matrix
    leetcode Maximum Subarray
    leetcode N-QueensII
    leetcode[50] N-Queens
    leetcod Pow(x, n)
  • 原文地址:https://www.cnblogs.com/tazi/p/2862406.html
Copyright © 2011-2022 走看看