嵌套Ajax获取请求不在IE11中触发

时间:2016-11-01 16:20:24

标签: javascript ajax internet-explorer-11 developer-tools

我在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);
                }
            });

1 个答案:

答案 0 :(得分:1)

在短时间内触发的请求中,IE11将使用缓存作为上一个请求。我找到了一个解决方案,在IE11中你必须使用属性CACHE: FALSE执行ajax请求,类似于的是:

$.ajax({
  url: "test.html",
  cache: false
})
  .done(function( html ) {
    $( "#results" ).append( html );
  });
相关问题