`
suton
  • 浏览: 10694 次
社区版块
存档分类
最新评论

js加载XML

 
阅读更多
//加载XML文件
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;
}
 
 
//加载XML字符串
function loadXMLString( 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;
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics