当前位置:编程学习 > C#/ASP.NET >>

文件下载的时候,怎么样弹出窗口只有“保存,取消”,不要 "打开"。

文件下载的时候,怎么样弹出窗口只有“保存,取消”,不要 "打开"。

<meta name="DownloadOptions" content="noopen" />

上面的代码只在IE中才有效,怎么在火狐中也实现相同的效果。 --------------------编程问答-------------------- 火狐的时候会弹出框吗? --------------------编程问答-------------------- --------------------编程问答-------------------- 那个是浏览器的设置吧? --------------------编程问答-------------------- 火狐下载的时候会弹出对话框 两个RadioButton(打开,保存) 和确定 取消 按钮 --------------------编程问答-------------------- 下载文件的控制

<%@ Page Language="C#" Title="下载" AutoEventWireup="true"  %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head id="Head1" runat="server">
    <title>下载</title>
    <meta id="metaDownloadOptions" runat="server" name="DownloadOptions" content="noopen" />
</head>
<body id="Body1" runat="server">
<form id="Form2" runat="server">
<script runat="server">
    /// <summary>
    /// metaタグを利用したダイアログのボタン表示制御
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void rblOpenSave_SelectedIndexChanged(object sender, EventArgs e)
    {
        //-----------------------------------------------------------------------------------------
        // DownloadOption名を持つmetaタグのContent変更
        //-----------------------------------------------------------------------------------------
        HtmlMeta metaDownloadOptions = (HtmlMeta)Header.FindControl("metaDownloadOptions");
        switch (rblOpenSave.SelectedValue)
        {
            case "nosave":
                metaDownloadOptions.Content = "nosave";
                break;
            case "noopen":
                metaDownloadOptions.Content = "noopen";
                break;
            default:
                metaDownloadOptions.Content = "";
                break;
        }
    }
    /// <summary>
    /// ファイルダウンロードボタンクリック
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnDownload_Click(object sender, EventArgs e)
    {
        //-----------------------------------------------------------------------------------------
        // ダウンロード処理
        //-----------------------------------------------------------------------------------------
        // Response情報クリア
        Response.ClearContent();
        // バッファリング
        Response.Buffer = true;
        // HTTPヘッダー情報設定
        Response.AddHeader("Content-Disposition", "attachment;filename=memo.txt");
        Response.ContentType = "text/plain";
        // ファイル書込
        Response.Write("download dialog box customize");
        // フラッシュ
        Response.Flush();
        // レスポンス終了
        Response.End();
    }
</script>
<h1>ファイルダウンロードダイログのボタンをカスタマイズ</h1>
<!-- コンテンツ説明 -->
IEのファイルダウンロードダイアルログのボタンをカスタマイズする、ASP.NETのサンプルです。<br />
IE以外のブラウザではカスタマイズは有効になりません。<br />
<br />
<br />
<!-- コンテンツ -->
<asp:RadioButtonList ID="rblOpenSave" runat="server" AutoPostBack="true" RepeatDirection="Vertical"
    onselectedindexchanged="rblOpenSave_SelectedIndexChanged">
    <asp:ListItem Text="ダウンロードダイアログに「保存」ボタンを非表示" Value="nosave" Selected="True" />
    <asp:ListItem Text="ダウンロードダイアログに「開く」ボタンを非表示" Value="noopen" />
    <asp:ListItem Text="ダウンロードダイアログは通常のボタン構成で表示" Value="nomal" />
</asp:RadioButtonList>
<br />
<asp:Button ID="btnDownload" runat="server" Text="ファイルダウンロード" onclick="btnDownload_Click" /><br />
<br />
</form>
</body>
</html>


--------------------编程问答-------------------- 以上代码在IE下好用,火狐不支持
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,