当我点击下载按钮时,它链接到新的感谢网页,并在2秒后开始从SD卡下载.csv文件。
不是下载文件,而是在浏览器上显示。以下是我的代码。
我怎样才能每次都获得下载选项?请不要使用php代码,因为我是html的新手。
我不想在.csv文件打开浏览器后使用另存为选项进行保存。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Monitoring System</title>
<link href="/mchp.css" rel="stylesheet" type="text/css" />
<script src="/mchp.js" type="text/javascript"></script>
</head>
<body>
<div id="shadow-one">
<div id="shadow-two">
<div id="shadow-three">
<div id="shadow-four">
<div id="page">
<div>
<div>
<div>
<div id="title">
<div class="right">Interface</div>
<div class="left">Overview</div>
</div>
<div id="content">
<h1>Monitoring System</h1>
<table style="padding-left: 10px;">
<div id="lcontent">
<div id="llogindiv" ><h1>Thanks for downloading...</h1></div>
<META HTTP-EQUIV="refresh" CONTENT="2;~GetEventFile~;";>
</table>
</div>
</div>
<div class="spacer"> </div>
<div id="footer">Copyright © Monitoring System</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
~GetEventFile~会在运行时给我文件名。
答案 0 :(得分:7)
此时,安全的解决方案是设置响应标头。
Modern browsers支持anchor元素的download
属性,用于指定将要下载的文件名称:
<a href="http://sstatic.net/stackexchange/img/logos/so/so-logo.png" download="logo.png">Download SO Logo</a>
答案 1 :(得分:2)
您可以使用下载属性
<a href="Document.pdf" download="Document.pdf">Download the pdf</a>
这是一个HTML5属性。
答案 2 :(得分:0)
使用PHP,将其添加到标题中;
header('Content-Type: application/csv');
header('Content-Disposition: attachment; filename=example.csv');
header('Pragma: no-cache');
readfile("/filepath/example.csv");