【发布时间】:2012-11-21 21:09:44
【问题描述】:
我正在使用 MVC 4,在提交表单上我得到一个 pdf 文件。在这种形式中,我使用 ajax get request 从控制器获取一些数据。问题是,当我在提交表单后获取 pdf 文件时,在 iphone 上,pdf 会在同一页面上内联打开,并且在我返回程序页面后,我所有页面上的 ajax 请求都停止工作(他们在他们完成他们的请求之前都被取消了)。我一直在寻找一些解决方案,但没有任何帮助。我尝试过的解决方案是; cache: false - 在 ajax 请求中。 向 url 添加一个时间参数,每次时间参数都会改变。 我一直在阅读有关此问题的信息,并且我发现的唯一一件事是,如果 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
}
});
【问题讨论】:
-
我不确定我是否理解正确,但是你不能在ajax调用后打开pdf,这样它不会取消你的ajax调用吗?
-
我在 ajax 调用后打开 pdf。我第一次在 iphone 浏览器上打开我的程序(没关系)它可以工作,但是在我提交表单并获取 pdf 文件后,ajax 调用停止工作。只有当我关闭浏览器从后台关闭时它才有效。
标签: javascript ajax model-view-controller