- - PR -
PostBackとhistory.backについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-02-28 18:06
お世話になっています。
ASP2.0.netを使用しているのですが、 A画面からB画面に遷移する画面があり、 B画面でhistory.back()し、A画面に戻るときに 通常の場合、A画面のPage_Loadイベント処理は発生せずに A画面が表示されるのですが、 A画面でC画面(別ウィンドウ)を起動し、その後、B画面に遷移し B画面からhistory.back()でA画面に戻るときは、A画面の Page_Loadイベント処理が発生してしまいます。 同じような他の画面はそのような現象が起こらないのですが。。。 なぜこの現象が起きるのかまったく解りません。 A画面でPage_Loadイベントを発生しないようにするには どうすればよいのでしょうか。 また、どういった状況なら、history.back()でPage_Loadイベントが発生して しまうのでしょうか。 よろしくお願いします。 | ||||
|
投稿日時: 2006-02-28 19:28
history.back()って、ブラウザが行う処理なので、ブラウザの実装によって
どういう処理が起きるか異なるのでは? #history.back()は使わないようにするのが無難だと思いますが。。。 | ||||
|
投稿日時: 2006-02-28 21:06
どっとねっとふぁんさんどうもです。
history.back()を使用しないとダメなんです。。 普通にバックしているだけなのに何故か、A画面の Page_Loadを通過してしまいます。なので値がクリア されてしまいます。 | ||||
|
投稿日時: 2006-03-01 13:45
クライアントスクリプトが悪さしているとか。 SmartNavigationかValidatorは使っていますか? | ||||
|
投稿日時: 2006-03-01 18:11
こんにちは
推測ですけど、キャッシュ絡みなのではないでしょうか? あとは Last-Modified とか Cookieの有効期限などが関係しているのではないですかね〜? | ||||
|
投稿日時: 2006-03-02 12:14
解決しました!
みなさんどうもありがとうございます。 原因はA画面からB画面に遷移するときに Server.Transferを使用せず、リンクラベルで遷移すると PostBackが戻る処理で発生するみたいです。 なので、リンクボタンを使用し、遷移するようにしたら うまくできました。 |
1