- PR -

ASP.net 2.0 別画面へポストバック前のJavaScript起動

1
投稿者投稿内容
未記入じゃけんど
ベテラン
会議室デビュー日: 2004/11/09
投稿数: 65
お住まい・勤務地: Osaka City
投稿日時: 2006-08-15 16:26

今、ボタンコントロールをクリック時に、確認画面をJavaScriptで出したあとに、別画面にポストバックするような処理を作成しようとしています。
そこで、ボタンコントロールの[OnClientClick]プロパティーに「return confirm("よろしいですか");」を設定し、[PostBackUrl]プロパティーにポストバック先画面のUrlを設定しました。
実行すると、確認画面は表示されるのですが、別画面にポストバックしてくれません。理由がわかる方教えてください。お願いします。
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-08-15 17:28
生成されるHTMLを見ると、ボタンのonclickメソッドとして
"return confirm("よろしいですか");WebForm_DoPostBackWithOptions(なんちゃら)"
このようなJavaScriptが生成されるようですね。
これは1つのメソッドの中に2つの命令が書いてある形になると思います。
で、最初に「return」と記述しているので、confirmの結果をメソッドの戻り値として
返してしまうので、次の命令は必ず実行されないんじゃないでしょうか。

PostBackUrlを使わずに、ボタンがクリックされたときのサーバ側のメソッドで
画面の遷移を起こすしかないのかな、と思います。
かめたろ
ぬし
会議室デビュー日: 2003/03/20
投稿数: 255
投稿日時: 2006-08-15 17:42
引用:

どっとねっとふぁんさんの書き込み (2006-08-15 17:28) より:
生成されるHTMLを見ると、ボタンのonclickメソッドとして
"return confirm("よろしいですか");WebForm_DoPostBackWithOptions(なんちゃら)"
このようなJavaScriptが生成されるようですね。


てことは、よろしくない時だけreturnしちゃえばOKかも。
if(!confirm("よろしいですか"))return false;
1

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