jquery在ie上无法正确解析xml
2011-03-04 10:26
375 查看
在这个浩瀚的地球上,IE在浏览器的世界里占据了绝大的比例,特别是非IT界的民众
在上一个私活中,用户是一个非IT界的网民,观其环境便是win7+IE8,为配合,开发测试我也在IE8上跑。
在使用jquery做ajax效果,从服务器获取xml数据,出现了诡异的问题。经调试发现,服务器已经返回了xml数据,但是js上总是执行不出正确的效果(解析不出正确的数据),仔细检查了服务器返回的xml,确实的标准的。在IE8上久久不成功之际,转战firefox得到了正确的效果,我了个去,又是一个浏览器不兼容的问题。
在多次google之后,发现问题是这样的,IE将从服务器获取到的xml数据作为String格式给和谐掉了,也就是说,本来我是要一个xml格式的数据文件,服务器也给了一个xml格式的数据文件,但是IE在接收到文件时,不按照xml格式解析给我,而是给了我一个String格式的破文件。
好了,找到问题出在哪,就好解决了。在得到数据文件是,做个判断,判断其是否String格式,如果是,则将其转换成xml的,然后再继续解析。具体代码如下
学习交流><欢迎拍砖
在上一个私活中,用户是一个非IT界的网民,观其环境便是win7+IE8,为配合,开发测试我也在IE8上跑。
在使用jquery做ajax效果,从服务器获取xml数据,出现了诡异的问题。经调试发现,服务器已经返回了xml数据,但是js上总是执行不出正确的效果(解析不出正确的数据),仔细检查了服务器返回的xml,确实的标准的。在IE8上久久不成功之际,转战firefox得到了正确的效果,我了个去,又是一个浏览器不兼容的问题。
在多次google之后,发现问题是这样的,IE将从服务器获取到的xml数据作为String格式给和谐掉了,也就是说,本来我是要一个xml格式的数据文件,服务器也给了一个xml格式的数据文件,但是IE在接收到文件时,不按照xml格式解析给我,而是给了我一个String格式的破文件。
好了,找到问题出在哪,就好解决了。在得到数据文件是,做个判断,判断其是否String格式,如果是,则将其转换成xml的,然后再继续解析。具体代码如下
$.ajax( { type : "POST", url : convertUrl("url"), dataType : "xml", data : "id="+encodeURIComponent(id), success : function(xmlData){ // 特殊处理如下 var xml; if( typeof xmlData == "string" ){ xml = new ActiveXObject("Microsoft.XMLDOM"); xml.async = false; xml.loadXML(xmlData); } else { xml = xmlData; } // 特殊处理结束,下面该怎么写怎么写 }, error : function(){ // 该怎么写怎么写 } });
学习交流><欢迎拍砖
相关文章推荐
- jQuery使用ajax传输xml文档在IE中无法正确解析的问题
- ie无法使用jquery解析xml
- 解决IE中无法使用jquery.find方法解析xml字符串的方法
- ie中jquery无法解析XML解决
- jquery 在IE中无法用post解析XML问题
- 解决IE中无法用jquery解析xml使用find的问题
- ie无法使用jquery解析xml的解决方法
- ie无法使用jquery解析xml
- ie无法使用jquery解析xml
- IE打开xml无法打开问题原理解析
- ie中jQuery无法解析xml文件的解决方案
- jQuery在ie下无法正常读取xml的其中小问题
- jquery解析XML在IE7下不兼容的问题
- ie中jQuery无法解析xml文件的解决方案
- 碎碎念:IE下不能正确解析xml文件的问题
- xml在IE中无法解析
- ie中jQuery无法解析xml文件的解决方案
- 正确用jQuery的AJAX加载XML并解析
- 【原创】解决jquery在ie中不能解析字符串类型xml结构的xml字符串的问题
- IE里jQuery解析xml的问题