我试过了:
var url = '/files/123.txt';
$('a').click(function(e) {
e.preventDefault(); //stop the browser from following
window.location.href = url;
});
这只是让firefox浏览到文本文件,而不是提示下载。
我也试过这个功能:
var downloadURL = function downloadURL(url)
{
var iframe;
iframe = document.getElementById("hiddenDownloader");
if (iframe === null)
{
iframe = document.createElement('iframe');
iframe.id = "hiddenDownloader";
iframe.style.visibility = 'hidden';
document.body.appendChild(iframe);
}
iframe.src = url;
}
哪个问题相同 - 在浏览器中打开,没有下载提示。
我尝试过使用apache:
<Files *.txt>
ForceType applicaton/octet-stream
</Files>
我在子文件夹和父文件夹中放置了.htaccess
此代码。如果请求的文本文件与网页位于同一文件夹中,则此apache方法似乎才有效。当文本文件放入子文件夹/files/
时,同样的问题仍然存在 - 没有下载提示。
真的,现在有秘密的方法吗?
答案 0 :(得分:1)
利用PHP标头实现最多功能。如何做到这一点可以在这里找到: http://webdesign.about.com/od/php/ht/force_download.htm
答案 1 :(得分:1)
如果您想使用.htaccess
方式,则需要更改标题而不是内容类型:
<FilesMatch "\.(?i:txt)$">
Header set Content-Disposition attachment
</FilesMatch>