javascript - 文件下载框出现前弹出一个新窗口下载框出现后新窗口自动关闭的问题
高洛峰
高洛峰 2017-04-10 12:44:39
[JavaScript讨论组]

实现方式:
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

效果:
文件下载框出现前弹出一个新窗口,下载框出现后新窗口自动关闭

问题一:这个效果实现的原理是什么,窗口为什么会自动关闭呢?

问题二:如果想要在用户点击了下载框中的"取消下载"或者"下载文件"按钮之后再关闭新窗口,要如何实现呢?

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
黄舟

问题一 ... IE 就这样儿 ... 如果你用其他浏览器的话连新窗口都看不到 ...

问题二 ... 不直接弹 download.php ...

location.href 到 download.php 然后 window.close() ...

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号