10

非表示の入力からcsv文字列を取得し、CSVファイルとして応答に書き込むボタンクリックイベントにいくつかのコードがあります。

これは、Chrome、Firefox、ie7、ie9 の互換モードで正常に動作します。ただし、ie8 または ie9 のデフォルトでは機能しません。

これをフィドラーで見ると、csv が応答に書き込まれていますが、直後に別の get 要求が行われ、ページがリロードされます。ファイル保存ダイアログは表示されません。

    protected void btnCsvHidden_Click(object sender, EventArgs e)
    {
        var csv = csvString.Value;
        var filename = "Reporting";

        Response.Clear();
        Response.ClearHeaders();
        Response.AddHeader("Cache-Control", "no-store, no-cache");
        Response.AddHeader("content-disposition", "attachment; filename=\"" + filename + ".csv\"");
        Response.ContentType = "text/csv";
        Response.Write(csv);
        Response.End();
    }
4

1 に答える 1

3

問題は私自身の IE にありました。Windows の更新プログラムを大量に実行したところ、動作するようになったので、正確にはわかりません。

于 2012-12-19T23:01:20.323 に答える