ie无法使用jquery解析xml

今天做一个区域配送部分,需要调用XML来显示各个地区的配送信息,但是用jquery调用xml时,IE总是提示xml文件加载失败,但是在Firefox中的结果却是成功的。代码如下:
[javascript]
$.ajax({
url:”codArea.xml”,
type: “GET”,
dataType: “xml”,
error: function(xml){
alert(‘Error loading XML document’+xml);
},
success: function(xml){
$(xml).find(“pName”).each(function(i){
$(“#province”).append(“<option id=”+i+”>”+$(this).text()+”</option>”);
});
}
});
[/javascript]
标准的jquery调用xml的方式,问题出在哪里呢百思不得其解,最后上网找到答案了,因为IE出于安全考虑,不允许浏览器去直接请求本地磁盘的文件。如果把文件上传到服务器就可以正常访问了,但是如果想在本地看效果,可修改适当的修改一下代码,如下:
[javascript]
$.ajax({
url:”codArea.xml”,
type: “GET”,
dataType: ($.browser.msie) ? “text” : “xml”,
error: function(xml){
alert(‘Error loading XML document’+xml);
},
success: function(data){
var xml;
if (typeof data == “string”) {
xml = new ActiveXObject(“Microsoft.XMLDOM”);
xml.async = false;
xml.loadXML(data);
} else {
xml = data;
};
$(xml).find(“pName”).each(function(i){
$(“#province”).append(“<option id=”+i+”>”+$(this).text()+”</option>”);
});
}
});
[/javascript]
原文地址:https://www.cnblogs.com/shihao/p/2182844.html