我正在使用iframe通过AJAX请求从服务器下载excel文件。每当单击按钮时,服务器都会在大约半分钟内创建一个excel文件,并将网址发送回客户端。我正在设置iframe的“ src”属性中的网址
$("#ExportExcelFrame").attr('src', url);
即使文件存在并且可以从生成的URL访问,客户端也会抛出404错误。
每当我硬编码文件名(使用某个预先存在的文件的文件名)以消除处理延迟时,设置工作便会完成,并且会下载excel文件。
我试图将ajax请求的超时更改为无济于事
$.ajaxSetup({
timeout: 120000 //Time in milliseconds
});
任何建议将不胜感激。
Ajax调用
jQuery.ajax({
type: 'GET',
url: 'Controller',
data: {type: param, StartDate: StartDate, EndDate: EndDate, DateType:dateType,ResEstmBean: JSON.stringify(ResourceEstmBean)},
beforeSend: function () {
$.blockUI({message: message, css: messageCss});
},
success: function (data)
{
var fileName = data;
var url = "http://localhost:8080/WebApp/" + fileName;
$("#ExportExcelFrame").attr('src', url);
$.unblockUI();
},
timeout: 300000,
error: function () {
$.unblockUI();
showErrorAlert();
}
});
我在2秒后设置了属性
setTimeout(function () {$("#ExportExcelFrame").attr('src', url)}, 2000);
现在正在工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句