- PR -

処理後完了メッセージを出して遷移したい

1
投稿者投稿内容
Chee
会議室デビュー日: 2004/05/18
投稿数: 5
投稿日時: 2004-06-08 12:59
お世話になっています、表題の件でご質問したいことがあります。
ある更新系の画面で、更新ボタンのクリック時に更新処理を行い、完了メッセージを表示し、そのままその画面から呼び元の画面へ遷移する処理を行いたいと思っています。

コード
Private Sub cmbUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbUpdate.Click

    'ここで更新処理
    〜〜〜〜〜〜〜〜
    'エラーなく処理完了
Dim script As New System.Text.StringBuilder
script.Append("<script language=""JavaScript"">")
script.Append("window.alert(""" & "aa" & """);")
script.Append("</script>")

Me.RegisterStartupScript("abcd", script.ToString)
Response.Redirect("../01/menu.aspx")
   End Sub

過去ログを参照しまして、メッセージを処理後に表示するところまではいったのですが、遷移する処理を書くとメッセージが出なくなってしまいます。
なんとかメッセージボックスを出させてその後に遷移する方法はないでしょうか。

環境 Win2k,.NET2003,VBorASP.net
背古井
常連さん
会議室デビュー日: 2004/04/02
投稿数: 39
投稿日時: 2004-06-08 13:44
背古井と申します。

asp.netからJavaScriptを発行する場合は発行後すぐに終了させなくては
ならないようです。
したがって

>script.Append("<script language=""JavaScript"">")
>script.Append("window.alert(""" & "aa" & """);")
>script.Append("</script>")

の後に何か処理を入れるとJavaScriptは実行されません
すぐに「end sub」にしなければならないのです。

ちなみに私はこの問題が解決できなかったので、メッセージボックス風の画面を
一枚作成して、


Response.Redirect("../01/MsgBox.aspx")

とし、このMsgBoxに

Response.Redirect("../01/menu.aspx")

という風に使用しています。





Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-06-08 14:02
引用:

Cheeさんの書き込み (2004-06-08 12:59) より:

Response.Redirect("../01/menu.aspx")


 この処理を、JavaScriptで行えばいい。とかじゃなく?
Chee
会議室デビュー日: 2004/05/18
投稿数: 5
投稿日時: 2004-06-08 14:26
お世話になっています。
Jittaさんに教えていただいたように全てJavaScriptに埋め込んでみました。
画面の戻るボタンで戻ったときにもボタンを押したのと同じ動きをするようで(メッセージが出て遷移)これが認めてもらえるかどうかは分からないのですがいけそうなきがします。
ありがとうございました。(そもそも埋め込んでいるので戻ったときに同じ動きをするのは当たり前でしょうか?)
戻るボタンの動きがおかしいのでダメ、とはねられてしまったら、、
背古井さんの方法を参考にさせていただきたいと思います。
勉強になりました、ありがとうございました。

Dim script As New System.Text.StringBuilder
script.Append("<script language=""JavaScript"">")
script.Append("window.alert(""" & "aa" & """);")
script.Append("window.location.href = '../01/Menu.aspx';")
script.Append("</script>")

Me.RegisterStartupScript("abcd", script.ToString)
He
大ベテラン
会議室デビュー日: 2002/12/18
投稿数: 141
投稿日時: 2004-06-08 20:48
引用:

Cheeさんの書き込み (2004-06-08 14:26) より:
画面の戻るボタンで戻ったときにもボタンを押したのと同じ動きをするようで(メッセージが出て遷移)


replaceメソッドを使ってみたらどうでしょう?
Cheeさんの期待通りの動きかはわかりませんが、とりあえずメッセージがでるのは防げると思います。

余談かつ個人的な意見ですが、
ブラウザの戻るボタンや更新ボタンをユーザが使用した場合でも、おかしくない動作をするWebアプリを作成するのは、結構難儀です。
早い段階で方針を決定しておいた方がよいですよ。
(「戻るボタンは使用しないでください」とマニュアルに書いちゃうとか。)
# この掲示板の検索で「ブラウザ 戻る ボタン」あたりで検索すると、難儀さが実感できるかと。
余計なお世話でしたらすみません。
Chee
会議室デビュー日: 2004/05/18
投稿数: 5
投稿日時: 2004-06-21 14:00
お返事が大変遅くなりましてすみません。

Heさんのおっしゃるとおり、どこまでやるかというのは微妙かつ重要な問題ですよね。
ある程度のあきらめも必要だと思いますし、、
今回は埋め込み方式で全て対応していくことになりました。
親切にありがとうございました、又何かありましたら宜しくお願いします。
1

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