我在IE中遇到与jQuery和Ajax有关的问题。 Chrome和Firefox可以正常工作,但是我的Ajax调用在IE中消失了。

进行ajax调用后,successfail函数都不会被调用。我可以在IE控制台中看到响应,而且我知道我的控制器操作已被执行。

$.ajax({
    url: controllerUrl
    type: 'POST',
    dataType: 'json',
    cache: false,
    data: {
        id: customerId
    },
    success: function () {
        alert('success!');
    },
    error: function () {
        alert('failed!');
    }
});


还有其他人看到过这个问题吗?

最佳答案

fail: function () {
        alert('failed!');
    }


fail不是有效的jQuery ajax设置。我相信您正在寻找error

同样,cache: false,POST请求不执行任何操作。

请注意,jQuery不会在时间戳上附加POST请求。

源代码清楚地证明了这一点。 (摘自https://github.com/jquery/jquery/blob/master/src/ajax.js

var rnoContent = /^(?:GET|HEAD)$/;
s.hasContent = !rnoContent.test( s.type );
if ( !s.hasContent ) {
   /* code to append time stamp */
}

09-30 16:20
查看更多