项目导出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);
//=================结束===================
参考来源:
http://www.blogjava.net/Hafeyang/archive/2010/12/12/readystate_property_of_iframe.html
相关文章
- ovs2.7 在系统重启后,再次使用时提示数据库无法连接的问题。
- 当Mongo客户端在启动的时候提示由于目标计算机积极拒绝,无法连接问题解决
- 关于云服务器可以远程桌面连接,但是浏览器无法访问服务器的网址,显示服务器连接超时问题
- a标签至于flash之上的时候,IE浏览器无法点击连接的问题
- 解决ajax请求返回Json无法解析"\"字符的问题
- Android studio无法创建类和接口问题解决办法。提示 Unable to parse template "Class"
- 应用程序无法正常启动提示错误0xc000007b 问题的原因和解决方法
- VSCode中autopep8无法运行问题解决方案(提示Error: Command failed,usage)
- mysql 的root 用户无法授权及解决navicat 远程授权提示1044问题
- 我无法从AJAX调用中捕获特定浏览器记录的错误。抓住这些甚至可能吗?