解析xml字符串的函数

作者:亮亮 来源:亮亮blog 时间:2008-06-10 12:37:00 


在使用操作XML文件时,我们可以使用Load方法直接加载xml文件即可,在ie和ff下通用。但是是XML字符串,则在两种浏览器下就会有所不同,IE下可以直接使用LoadXML方法解析XML字符串,而在FF下则要使用DOMParser 对象的parseFromString() 方法即

var oParser=new DOMParser();
xmlDoc=oParser.parseFromString(xmlStr,"text/xml");

为了在两种浏览器中能通用,我想到了javascritp的发生异常的处理方式,就是try...catch...
看看实现的代码:


function toXML(strxml){
  try{
     xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
     xmlDoc.loadXML(strxml);
  }
  catch(e){
     var oParser=new DOMParser();
     xmlDoc=oParser.parseFromString(strxml,"text/xml");
  }
  return xmlDoc;
}

现在来看看效果

看,不管在ie还是ff中都弹出了1400吧!!

没事在无忧脚本上逛的时候看到了这样的函数:


 

function FormatToXml(strXml){
var isIE = function(){
  var IE = /msie/i.test(navigator.userAgent);
  return IE;
}
var Exc = function(){
  var XmlDoc = null;
  if (isIE())
  {
   XmlDoc = new ActiveXObject("Microsoft.XMLDOM");
   XmlDoc.loadXML(strXml);
  }else{
   //FireFox2.0、Safari2.0
   XmlDoc = (new DOMParser()).parseFromString(strXml, "text/xml");
  }
  return XmlDoc;
}
return Exc();
}

功能是一样的,都是为了在ie和ff中处理xml字符串的解析问题。不过在无忧上有些人说xml字符串要有<?xml version="1.0" encoding="gb2312"?>,可我测试后若有xml version="1.0" encoding="gb2312"?>,解析结果不一致,所以我上面的例子没有加这些字符。 

 

标签:xml,字符串,函数,dom
0
投稿

猜你喜欢

  • jQuery 防止相同的事件快速重复触发方法

    2024-04-09 19:48:05
  • node.js回调函数之阻塞调用与非阻塞调用

    2024-05-05 09:21:26
  • 解决python3.x安装numpy成功但import出错的问题

    2023-12-29 22:33:44
  • pycharm显示远程图片的实现

    2021-03-02 13:27:39
  • JS清除IE浏览器缓存的方法

    2024-04-19 10:15:25
  • python实现超市管理系统(后台管理)

    2022-08-17 06:50:22
  • 解决php-fpm.service not found问题的办法

    2023-11-21 14:26:21
  • python通过ssh-powershell监控windows的方法

    2021-07-24 03:55:16
  • Pytest接口自动化测试框架搭建模板

    2022-01-29 02:26:44
  • 浅析MySQL并行复制

    2024-01-13 02:54:10
  • 运行asp.net时出现 http错误404-文件或目录未找到

    2023-07-24 01:53:36
  • Vue CLI3.0中使用jQuery和Bootstrap的方法

    2023-07-02 17:08:15
  • python3实现全角和半角字符转换的方法示例

    2021-06-16 13:08:36
  • MySQL分区表的正确使用方法

    2024-01-29 01:51:26
  • MSSQL MySQL 数据库分页(存储过程)

    2024-01-29 13:28:13
  • 分享Python获取本机IP地址的几种方法

    2022-02-17 12:47:18
  • 详解Python如何获取列表(List)的中位数

    2022-02-01 02:35:37
  • 使用mss2sql工具将SqlServer转换为Mysql全记录

    2024-01-24 11:59:37
  • python目标检测SSD算法训练部分源码详解

    2021-08-01 02:23:15
  • Python3.5内置模块之shelve模块、xml模块、configparser模块、hashlib、hmac模块用法分析

    2022-04-16 17:07:04
  • asp之家 网络编程 m.aspxhome.com