- PR -

【ASP.NET】ダウンロード後の画面遷移がブラウザの履歴に残らない

1
投稿者投稿内容
けろり
会議室デビュー日: 2008/11/01
投稿数: 2
投稿日時: 2008-11-01 20:51
【環境】
WebServer:IIS6.0
Browser:IE6.0 SP1

【仕組み】
A画面(ASP.NET)とB画面(HTML)が有り、
B画面へはA画面上のリンク(<A>タグ)にて遷移。
A画面にはボタンによるファイルダウンロード機能(Response.WriteFile)有り。

【現象】
A画面からリンク押下でB画面に遷移→ブラウザの戻るボタン活性(履歴に追加される)
A画面からボタン押下でファイルをダウンロード後に
リンク押下でB画面に遷移→ブラウザの戻るボタン非活性(履歴に追加されない)

B画面からはJavaScriptのHistory.BackでA画面に戻すため
ダウンロード後にB画面に遷移するとA画面に戻れず困っています。

御助言いただきたく宜しくお願い致します。
べる
ぬし
会議室デビュー日: 2003/09/20
投稿数: 1093
投稿日時: 2008-11-02 11:02
確かに履歴に追加されないですね。

引用:
A画面にはボタンによるファイルダウンロード機能(Response.WriteFile)有り。

これを、
ボタンクリック時にResponse.Redirect("〜url〜");
とするか、
javascriptのlocation.href='〜url〜';
(この場合ボタンはただの<input type="button"でいい)のようにすれば履歴に残るようです(当方IE7)。

urlはpage.aspx?download=true とかしておいて、Page_LoadでResponse.WriteFileすればよいです。
ダウンロード用のaspxを作ってもいいですが。
けろり
会議室デビュー日: 2008/11/01
投稿数: 2
投稿日時: 2008-11-03 23:10
べるさんレス有難うございました。
既存の画面構成で何とかしたかったのですが
御助言通り別aspxでResponse.WriteFileすることにしました。
1

スキルアップ/キャリアアップ(JOB@IT)