- PR -

ASP.NET 更新ボタンを押すと直前のイベントが走ってしまいます。

1
投稿者投稿内容
ゆき
大ベテラン
会議室デビュー日: 2003/11/02
投稿数: 121
投稿日時: 2005-02-13 14:37
こんにちは。
ブラウザの更新ボタンを押すと、「情報を再送信しないと、ページを更新できません。〜」のダイアログが表示され、そのダイアログで再試行をクリックすると、例えば<asp:button>のクリックイベントなど、更新ボタンを押す前に呼び出されたイベントが、また呼び出されてしまいます。
画面にはDataGridやLabel、TextBox、Buttonなどが配置されていて、DataGridにデータが表示されていないときはダイアログも出ないのですが、DataGridにデータが表示されていると、ダイアログがでてしまい、上記の現象が発生してしまいます。
どうしたら更新でのイベント発生をやめさせられるのでしょうか。
ご存知の方がいらっしゃいましたら、教えて頂けないでしょうか?
よろしくお願いします。




中博俊
ベテラン
会議室デビュー日: 2004/10/17
投稿数: 91
お住まい・勤務地: 大阪市
投稿日時: 2005-02-13 16:34
こんにちは中です。

Webの機能はそういうものです。
それでも問題が起きないように設計する必要があります。

2度押しの場合には無効にするとかそれらは設計によるのでこうしろと言う解決策はありません。

ゆき
大ベテラン
会議室デビュー日: 2003/11/02
投稿数: 121
投稿日時: 2005-02-13 18:06
お返事ありがとうございます。
どうやらそうみたいですね。
IsPostBackでPostBackかどうかを判定するように、ブラウザの更新によるよるPostBackかボタンを押したことによるPostBackかを判定するプロパティのようなものはないのかなと思っていたのですが。
ボタンを押した時にボタンのTextプロパティを変えてしまって、そのTextで判定するのが無難かなと思いました。
1

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