0

私が試してみました:

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 メソッドは、要求されたテキスト ファイルが Web ページと同じフォルダーにある場合にのみ機能するようです。テキスト ファイルをサブフォルダー/files/に配置すると、同じ問題が発生し、ダウンロード プロンプトが表示されません。

本当に今、これを行うための秘密の方法はありますか?

4

2 に答える 2

1

.htaccessコンテンツタイプではなく、ヘッダーの方法を使用する場合は、次のように変更する必要があります。

<FilesMatch "\.(?i:txt)$">
  Header set Content-Disposition attachment
</FilesMatch>
于 2012-09-11T09:09:09.330 に答える
1

ほとんどの汎用性のために PHP ヘッダーを利用します。これを行う方法については、 http ://webdesign.about.com/od/php/ht/force_download.htm を参照してください。

于 2012-09-11T09:03:14.060 に答える