提交表单时自动“下载”PDF
Automatic "download" PDF as upon form submission
我有一个表单按钮,单击它时它会提交表单。
我希望同时浏览器开始下载PDF文件。我想知道我该怎么做?请记住,默认情况下,PDF通常由浏览器打开,但我希望浏览器"另存为"文件而不打开文件。这只能使用 html 还是我需要 JavaScript?
如果你在服务器端使用PHP,试试这个。这是在我的一个网站中运行的测试代码。
<?php
ob_start();
$file = 'YOUR-FILENAME-HERE.pdf';
if (file_exists($file))
{
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit();
}
?>
浏览器将提示下载而不显示在浏览器中。
您可以使用此插件通过javascript下载文件。
否则,在javascript中,你可以为它编写代码。
$('a').click(function(e) {
e.preventDefault(); //stop the browser from following
window.location.href = 'downloads/file.pdf';
});
<a href="no-script.html">Download now!</a>
或者,您可以使用这个.
在 PHP 中:
<?php
header('Content-type: application/pdf');
header('Content-disposition: attachment; filename=filename.pdf');
readfile("file.pdf");
?>
在 Javascript 中:
<body>
<script>
function downloadme(x){
winObj = window.open(x,'','left=10000,screenX=10000');
winObj.document.execCommand('SaveAs','null','download.pdf');
winObj.close();
}
</script>
<a href=javascript:downloadme('file.pdf');>Download this pdf</a>
</body>
在这种情况下,您必须将网络服务器配置为强制下载PDF。如果你使用的是 Apache,不妨看看这篇文章 ->http://www.thingy-ma-jig.co.uk/comment/7264
或者,如果您不必支持所有浏览器,则可以仅使用 html5 下载属性 -> http://updates.html5rocks.com/2011/08/Downloading-resources-in-HTML5-a-download
选项 1:您可以让表单提交到的 URL 返回下载。
选项 2:使用 ajax 调用在单击时提交数据,将 window.location 设置为您的下载 URL。
无论 pdf 是在浏览器中打开还是下载,都是您无法控制的客户端设置。
相关文章:
- 如何使用javascript或html下载PDF格式的填写表单
- 在提交时打开thankyou.html+下载PDF
- 如何在网络上下载pdf
- 如何使用HtmlUnit下载PDF文件
- 如何创建和下载PDF和docx格式的文件,该文件将从AngularJS中的表中的数据创建
- 下载pdf格式不正确
- 下载pdf/word按钮javascript /jquery
- 提供下载pdf或在浏览器中打开的选项
- 使用 JavaScript 下载 PDF 文件
- PHP/HTML:下载PDF链接处理页面加载
- 从 AngularJS 中的 .NET 控制器下载 PDF
- 提交表单时自动“下载”PDF
- 无法使用 Angular.js 下载 pdf 文件
- 如何在不打开浏览器的情况下下载pdf文件
- 如何使用来自服务的响应下载 pdf
- 使用 jquery 下载 PDF
- 使用 php 下载 PDF,不在资源管理器和 safari 中工作
- 浏览器请求文件,服务器下载 pdf,浏览器在 iframe 中显示 pdf
- 使用jQuery下载PDF(不打开)
- 如何使用js自动下载PDF