问题描述: 系统需要做个查询结果的导出,导出格式是excel,一开始用的是window.open(downloadUrl);,结果页面闪烁;网上搜了一下,用iframe,
div中加入
<iframe name="hidden_frame" id="hidden_frame" style="display: none"></iframe>
js这样写
window.open(downloadUrl,"hidden_frame");
解决了闪烁的问题,但是遇到了新问题,就是点击一次导出按钮,下载两次
解决方案: 和前端同事寻求了一下帮助,前端同事百度了一下把iframe换成了a标签就好了
var alink = document.createElement("a");
alink.download="问题库.xlsx"//文件名,大部分浏览器兼容,IE10及以下不兼容
alink.href=downloadUrl;//downloadUrl为url地址
alink.click(); //自动点击
参考原文地址
https://blog.csdn.net/weixin_41838204/article/details/99671748