项目导出Excel,因导出时间过长需要增加遮罩层,使用ajax时,无法弹出下载提示。
所以修改为了js动态创建iframe进行提交,完成最终效果。
//=================开始===================
var url="提交地址";
var iframe = document.createElement("iframe");
iframe.src = url;
showSending(); //自己写的遮罩层
if (!/*@cc_on!@*/0) { //if not IE
iframe.onload = function(){
hiddenSending(); //自己写的隐藏遮罩层
};
} else {
iframe.onreadystatechange = function(){
//文件下载是在http请求的interactive也就是浏览器交互阶段。
if (iframe.readyState == "interactive"){
hiddenSending(); //自己写的隐藏遮罩层
}
};
}
iframe.style.display = 'none';
document.body.appendChild(iframe);
if (!/*@cc_on!@*/0) { //if not IE
iframe.onload = function(){
hiddenSending(); //自己写的隐藏遮罩层
};
} else {
iframe.onreadystatechange = function(){
//文件下载是在http请求的interactive也就是浏览器交互阶段。
if (iframe.readyState == "interactive"){
hiddenSending(); //自己写的隐藏遮罩层
}
};
}
iframe.style.display = 'none';
document.body.appendChild(iframe);
//=================结束===================
参考来源: