2012-12-19 9 views
9

可能性の重複:
detect back button click in browserIEで戻るボタンを押したかどうかを確認するには?

私は2つのページ、ページ1とページ2を持っています。リンクをクリックしてPage1からPage2に移動するとき、私はPage2をオンにしたときにブラウザの戻るボタンをクリックするとPage1の状態を復元するために必要な条件を保存する傾向があります。

私はクッキーで保存された条件に基づいてページをリロードすることができます

protected override void OnInit(EventArgs e) 
{ 
    Response.Cache.SetCacheability(HttpCacheability.NoCache); 
    Response.Cache.SetNoStore(); 
    Response.Cache.SetExpires(DateTime.MinValue); 
    base.OnInit(e); 
} 

ように私は、キャッシュをクリアするには、以下の機能を使用しています。しかし問題は、私がPage1に来るためにブラウザの戻るボタンかメニューリンクを押したかどうかを特定する方法です。

更新:

私はちょうどこのリンクdetect back button click in browserに上陸したが、それは私のため

+4

http://stackoverflow.com/questions/6359327/detect-back-button-click-in-browser – GeorgesD

+1

私は場所とナビゲーション情報をいくつかのセッション変数に格納して、それに応じて処理することであなたがどこにいたのか、今どこにいたのか。 – Alex

+0

@GeorgesDそれは私の問題を解決しません – iJade

答えて

0

機能しないソリューション、あなたの問題はありません教えてください。ページのキャッシュ可能性をnoneに設定しているため、ブラウザは単にページの無条件要求を再発行します。これは、そのページへのリンクをクリックすることと変わらず、検出できません。

あなたの問題は、あなたがこのようなセッション(擬似)を使用することができ、誰かがページを再訪時にフォームデータを設定する方法がわからないということであれば:あなたが明確に表示したい場合は

if (!String.IsNullOrEmpty(Session["Username"])) 
{ 
    UsernameTextbox.Text = Session["Username"]; 
} 

をそのページへのリンクをクリックすると、reset=trueのようなクエリパラメータを設定できます。これにより、セッションデータが消去され、空白のフォームが表示されます。

+0

ここに私の問題へのリンクです... http://stackoverflow.com/questions/13931677/unable-to-read-the-selected-drop-down-list-valueページ上でのロード後 – iJade

関連する問題