实现方式:
download.php
$outputFileName = "test.xls";
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header('Content-Disposition:inline;filename="' . $outputFileName . '"');
header("Content-Transfer-Encoding: binary");
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
index.html
<html>
<head>
<script type="text/javascript">
window.open('download.php');
</script>
</head>
<body>
test
</body>
</html>
test.xls
效果:
文件下载框出现前弹出一个新窗口,下载框出现后新窗口自动关闭
问题一:这个效果实现的原理是什么,窗口为什么会自动关闭呢?
问题二:如果想要在用户点击了下载框中的"取消下载"或者"下载文件"按钮之后再关闭新窗口,要如何实现呢?
问题一:使用的IE浏览器的原因
问题二:不直接弹 download.php ,
location.href 到download.php然后 window.close()
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。