0
public void Save(object s, EventArgs e)
{

    HtmlMeta meta = new HtmlMeta() { Name = "DownloadOptions", Content = "noopen" };

    MetaPlaceHolder.Controls.Add(meta);

    string name = "Editor.html";

        //Response.AppendHeader("X-Download-Options", "noopen");
    Response.AppendHeader("content-disposition", "attachment; filename=" + name);
    Response.WriteFile(Server.MapPath("~/SentinelOperationsUI/Editor.html"), true);
    Response.End();
}

ヘッダーに手動で追加すると、メタ タグ<meta name="DownloadOptions" content="noopen" />が ie7 でうまく機能します。しかし、このように動的に追加しようとすると、効果がありません。

このダウンロード ボタン イベントのクリックにこのメタ タグを追加するには、どうすればよいですか? このボタンに追加するだけです。他のすべてのダウンロード ボタンのクリック イベントでそれを削除する必要がありますか?

アイデアが得られることを願っています。ありがとう!

4

1 に答える 1

1

ページのヘッダー内にヘッダーを設定し、ファイルをロードしようとするヘッダーを追加して、1 つの html ファイルを送信します。

添付ファイル付きの append ヘッダーは上書きされ、以前に設定しようとした html ヘッダーは無視されますが、writeFile で送信する html ファイルもブラウザーに直接送信され、response.Endを含む他のすべての書き込みが停止します。以前に追加したHtmlMeta

.End() を削除しても、送信したすべてのデータの後にヘッダーが書き込まれ、意味がありません。

于 2012-05-07T09:23:04.880 に答える