2

我的 iframe 标签如下所示

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

file_url = 存储/ASDFVASDFADSFACASDFCDDF.doc

文件名 = 我的单词.doc

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

4

3 回答 3

2

iframe元素不能这样做,但您可以将其放在.htaccess“商店”目录中的文件中:

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

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

于 2013-07-08T11:13:04.983 回答
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');
?>
于 2013-07-08T11:11:51.110 回答
0

这与 HTML 无关。你做不到。

Web 服务器需要发送一个“Content-Disposition”标头。如何使您的服务器做到这一点取决于服务器上运行的软件。

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

存储/ASDFVASDFADSFACASDFCDDF/文件名.doc

于 2013-07-08T11:11:30.490 回答