所以工作是将所有机器升级到Windows 8,我们遇到了兼容性问题。这适用于除Windows 8以外的所有浏览器。
所有这些脚本都在运行Windows Server 2008,因此我可以看到为什么IE10应该有问题:
function getProject(type, number){
$.ajax({
type: "GET",
cache: false,
url: "prospect.xml",
dataType: "xml",
complete: function(XMLHttpRequest, textStatus){
if (textStatus!='success') {
$('#column-left').hide()
$('#column-right').hide()
$('#error').html('There was an error loading the data, please contact Systems Management').show()
}
},
success: function (data) {
if (type=='all') {
parseXmlAllProjects(data)
} else if (type='specific') {
parseXmlSpecificProject(data, number)
}
}
});
}
由于某种原因,脚本未能成功加载xml文件,因此无法检查textStatus。就像这样在我们的winxp环境中运行得非常好。
有什么想法吗?
答案 0 :(得分:1)
尝试更改此行:
complete: function(XMLHttpRequest, textStatus){
对此:
complete: function(jqXHR, textStatus){
我猜IE10不喜欢你使用XMLHttpRequest
名称。
答案 1 :(得分:0)
在阅读了一些文章之后我发现,因为IE9 IE没有像以前版本的IE那样返回msxml文档。因此代码已更改为以下内容:
function getProject(type,number){
$.ajax({
type: "GET",
cache: false,
url: "prospect.xml",
dataType: ($.browser.msie) ? "text" : "xml",
beforeSend: function(xhr, settings){
try {xhr.responseType = "msxml-document";} catch(err){}
},
success: function (data) {
if (type=='all') {
parseXmlAllProjects(data)
} else if (type='specific') {
parseXmlSpecificProject(data, number)
}
}
});
}