我想制作一个下载链接。
这是我的HTML:
<a href="javascript:void(0)"><img src="../images/icons/word.png" alt="Word"></a>
<a href="javascript:void(0)"><img src="../images/icons/excel.png" alt="Excel"></a>
<a href="/download/test.ppt"><img src="../images/icons/ppt.png" alt="PPT"></a>
<a href="/download/test.pdf"><img src="../images/icons/pdf.png" alt="PDF"></a>
当我点击<a>
标记时,我想执行一个http请求,而<a>
标记确实会这样做。但它也跳到了新的页面。我不希望这种情况发生。
我搜索并找到了一些解决方案,例如设置<a>
代码的href="#something"
,或使用ajax。但是,这些解决方案并不是我想要的。
我想知道有更好的解决方案吗? PS:我真的不想在这里使用ajax来实现这些。
答案 0 :(得分:0)
您可以将目标设置为新标签。在Chrome中,此选项卡会自动关闭。
<a href="/download/test.ppt" target="_blank"><img src="../images/icons/ppt.png" alt="PPT"></a>
答案 1 :(得分:0)
HTML代码是:
<a href="../downloads/test.docx" target="_blank"><img src="../images/icons/ppt.png" alt="PPT"></a>
&#13;
我使用nodejs作为服务器,nodejs代码是:
fs.stat(filepath, function(err, stats) {
if (err)
throw err;
var stream = fs.createReadStream(filepath);
response.setHeader('Content-Type', mime.lookup(filepath));
response.setHeader('Content-Disposition', 'attachment; filename=test.docx');
response.writeHead(200);
stream.pipe(response);
});