- - PR -
ポストバックとブラウザの「戻る」
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-01-23 19:58
いつもお世話になっております、ASP.NET(VB)で開発中の者です。
奇妙な現象にぶちあたりましたので、お知恵をお借りしたく思っています。 イベントにてポストバックが発生するコントロールがあります。 仮にドロップダウンリスト、値をA/Bから選ぶものとします。 SmartNavigationは使用していません。 ドロップダウンリストからBを選択し、ポストバックが発生 した後、ブラウザの戻るをクリックすると、画面全体の状態は ポストバック前に戻るのですが、該当のドロップダウンリストの 値が戻りません(このばあい”B”と表示されます)。 それでもちゃんと表示したままの値を拾って処理をしてくれる (上記の状態で他のイベントを起こすと、ドロップダウンリストの 値は”B”を拾ってくれる)ので問題は無いかなと思うのですが… もしこれを、戻るをクリックしたときにAを表示させようとすると どのようにすればよいかご存知の方がいらっしゃいましたら ご教授願えませんでしょうか? | ||||
|
投稿日時: 2004-01-23 20:08
1:ページ情報を取得
↓ 2:ユーザによる情報の変更 ↓ 3:AutoPostBack = Trueによるデータの提出 ↓ 4:新たにページ情報を取得 で、ページ履歴に残るのは3,4、4から「戻る」と3。じゃぁ3でさらに「戻る」と1かというと、そうではなくて0。1,2,3は「同じページ」なんですね。 | ||||
|
投稿日時: 2004-01-23 23:26
レスありがとうございます。
う〜ん、理屈は分かるんですけど ユーザは「4→1へ戻るのが正当」だと 考えると思うんですよね、きっと。 たとえ理屈上は同じページでも、 ”B”に変えた後戻ったら ”A”になってて欲しいのが心情かと…。 | ||||
|
投稿日時: 2004-01-24 11:54
そうですか?例えば、検索ページなんかでも、「4→3」ですよね。もし、「4→1」にできたとしても、他と違うなら使い勝手の悪いページになりますよ。 ##### 3は、AutoPostBackじゃなく、ポストバック全体ですね。 というか、AutoPostBackなら、1に戻りたいですね、確かに。(1より0?) でも、AutoPostBack=Trueなら「戻らせてはいけない」と思います。 何らかの不整合が発生する可能性がありますから。 そういうわけで、私のところでは「戻るな」と表示させている …が、戻らせなくする方法がない |
1