如何在iframe中更改文件下载名称?

时间:2013-07-08 11:04:17

标签: html

我的iframe代码看起来像是吼叫

<iframe width="100%" height="100%" src="'+file_url+'" frameBorder="0"> <p>Your browser does not support .</p></iframe>

file_url = store / ASDFVASDFADSFACASDFCDDF.doc

file_name = my word.doc

当我点击iframe打开链接文件下载时文件名不正确。(使用ASDFVASDFADSFACASDFCDDF.doc文件名下载doc文件)。如何使用iframe下载具有真实文件名的文件?

3 个答案:

答案 0 :(得分:1)

在支持download属性的现代浏览器中,您应该能够以下列方式指定:

<a href="http://google.com" download="awesome.html">Download</a>

好消息是,这也会在浏览器中触发强制下载行为。

或者,您可以通过PHP脚本传递下载,以设置要在标题中提供的文件名,如下所示:

<?php
// We'll be outputting a PDF
header('Content-type: application/pdf');

// It will be called downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// The PDF source is in original.pdf
readfile('original.pdf');
?>

答案 1 :(得分:1)

iframe元素无法执行此操作,但您可以将其放在“store”目录中的.htaccess文件中:

<FilesMatch ".doc$">
Header set Content-Disposition "attachment; filename=myword.doc"
</FilesMatch>

请注意,我在这里假设Apache,但大多数网络服务器都有类似的功能

答案 2 :(得分:0)

这与HTML无关。你不能这样做。

Web服务器需要发送“Content-Disposition”标头。如何让服务器执行此操作取决于服务器上运行的软件。

或者......只需将URL更改为此(显然在服务器上移动文件):

存储/ ASDFVASDFADSFACASDFCDDF / Filename.doc