我有一个用户在线填写的网络表单。当他们按下提交时,它将开始为他们下载文件。
目前,我处理表单提交并为用户生成一个合适的文件并使用合适的标题将其关闭。例如...
header('Content-type: "application/octet-stream"');
header('Content-Disposition: attachment; filename="yourfile.txt"');
header("Content-Transfer-Encoding: binary");
但是,由于这会立即开始下载,因此原始表单会被浏览器留在屏幕上。
一旦下载完成(或在下载开始之前),我真的很想去一些“谢谢”屏幕。我知道这是可能的,因为您访问的几乎每个下载站点都会这样做(通常会在下载开始之前给您灌满广告)。
那么,如何显示一秒钟后开始下载的“谢谢”屏幕?
提出的任何解决方案将如何影响后退按钮的行为,因为我不希望在不重新填写表单的情况下再次下载文件?
我在服务器上使用 PHP,并且可以依赖客户端上可用的 Javascript(和 jQuery)。
谢谢你。