我在IE11中遇到问题,但Chrome或Firefox没有问题。我有一个Ajax Get请求嵌套在一个似乎没有触发的Ajax Post请求的Success函数中。但是,如果打开Developer Tools,它会触发并按预期运行。为什么会这样?
$.ajax({
url: urls.firstUrl,
type: 'POST',
data: { itemId: itemId },
success: function (data) {
$('#aDiv').html(data);
$.ajax({
url: urls.secondUrl,
type: 'GET',
success: function (data) {
$('#aDiv').html(data);
},
error: function (xhr, status, error) {
showErrorAlert(xhr, status, error);
}
});
},
error: function (xhr, status, error) {
showErrorAlert(xhr, status, error);
}
});
答案 0 :(得分:1)
在短时间内触发的请求中,IE11将使用缓存作为上一个请求。我找到了一个解决方案,在IE11中你必须使用属性CACHE: FALSE
执行ajax请求,类似于的是:
$.ajax({
url: "test.html",
cache: false
})
.done(function( html ) {
$( "#results" ).append( html );
});