Javascript $.ajax在IE9中不起作用
我在Chrome和Firefox上有以下代码,但在IE9中没有Javascript $.ajax在IE9中不起作用,javascript,jquery,internet-explorer-9,Javascript,Jquery,Internet Explorer 9,我在Chrome和Firefox上有以下代码,但在IE9中没有 $.ajax({ type : type, url : url, data : reqData, crossDomain: true, cache: false, dataType : dataType, contentType : contentType, success : successFunction }).fail(function() { showError("IE9!"); });
$.ajax({
type : type,
url : url,
data : reqData,
crossDomain: true,
cache: false,
dataType : dataType,
contentType : contentType,
success : successFunction
}).fail(function() {
showError("IE9!");
});
类型为POST,数据类型为JSON,内容类型为application/JSON
所有其他参数均正确
我尝试过删除contentType,删除缓存,将缓存设置为true,但似乎没有任何效果
有什么想法吗?
提前感谢检查url路径(应该是绝对路径)并使其唯一,例如添加时间戳
var url = 'http://mydomain.com/' ** not '/' **
var timestamp = new Date()
var uniqueUrl = url + (uri.indexOf("?") > 0 ? "&" : "?") + "timestamp=" + timestamp.getTime()
然后
您不能在ie中使用普通ajax进行跨域访问,为此您必须使用XDR
请参阅给出的错误到底是什么?ajax调用到达服务器了吗?您能提供关于请求的更多信息吗?如果是跨域的,服务器是否建立了CORS支持,包括响应浏览器可以发送的内容?jQuery的
error
(和.fail()
)回调包含一个errorThrown
参数——它告诉您什么?并且,尝试在IE9的开发工具中捕获网络细节;检查发送的请求的状态和响应,并与预期进行比较。您是否尝试过使用http调试工具,如浏览器调试工具中的“网络”选项卡?这些工具将帮助您查看流量,以便您知道是否实际发送了请求,返回代码是什么,等等。
url : uniqueUrl,