0

ボタンがあり、そのOnClientClickイベントはGenerate()を呼び出します。

function Generate() {
    window.open('GenerateKey.aspx', '_newtab', 'titlebar = no', false);
    PageMethods.SendKey(SendKeyCallback, SendKeyCallbackError);
}

コールバック関数は、読み込み中のgifを非表示にし、ステータス(成功/失敗)を警告します

GenerateKey.aspxはファイルを作成し、ダウンロードポップアップを開きます。

これはpage_loadコードです:

    string keyFileName = orgName + "-" + timeStamp + ".ckey";
    fs = new FileStream(Server.MapPath("~/License/Generate/" + keyFileName), FileMode.Create, FileAccess.ReadWrite);
    sw = new StreamWriter(fs);
    sw.Write(generatedKey);
    sw.Flush();
    fs.Close();
    Response.ContentType = "text/xml";
    Response.AppendHeader("Content-Disposition", "attachment; filename=" + keyFileName);
    Response.TransmitFile(Server.MapPath("~/License/Generate/" + keyFileName));
    Response.End();

コードは正常に機能しますが、私の問題は、ダウンロードが画面に表示された後に新しいタブが閉じられることです(これは、Responseオブジェクトが原因で発生すると思います)。バグのように見えます。

新しい空白のタブが1秒間ポップアップ表示された後、閉じました。

誰かがそれをより良く見せるための方法を知っていますか?ファイルの生成後、クライアントに接続できなくなったため、同じページでそれを行うことはできません(そのため、window.openを使用しました)。

4

1 に答える 1