我正在使用MVC 4,在提交表单上我得到了一个pdf文件。在这种形式中,我使用ajax get请求从控制器获取一些数据。问题是,当我在提交表单后获得pdf文件时,在iphone上pdf在同一页面上内联打开,然后在我回到我的程序页面后,我所有页面上的ajax请求都停止工作(它们所有都在他们完成他们的请求之前被取消)。我一直在寻找一些解决方案,但没有任何帮助。我尝试过的解决方案是; cache:false - 在ajax请求中。 向url添加每次time参数更改时的时间参数。 我一直在读这个问题,我发现如果ajax请求状态返回0,那就意味着ajax请求在完成之前就被取消了。 它只发生在iphone上,因为它打开内联的pdf文件,而不是像在其他任何地方一样下载它。 请帮我解决这个问题,我一直试着这么做了。
这是我正在使用的ajax代码:
$.ajax({
type: 'GET',
url: '/IncomeExpenses/UpdateInvoiceData?time=' + new Date().getTime(),
data: str,
cache: false,
dataType: 'json',
success: function (data) {
//some code
}
});
答案 0 :(得分:0)
设置async: false
将有助于解决此问题。这样,我们通过使AJAX请求与浏览器同步来强制浏览器等待响应返回。