トップ回答者
エラーチェック(コードビハインド) => Modal画面起動(js) => Modal画面で対象選択の後Close => 取得内容を元画面に表示の流れは可能でしょうか。

質問
-
質問させて下さい。
ASP.NET の開発にあたりタイトルの様な制御は可能でしょうか。
現在想定している内容は以下となります。
①ボタンのクリックをトリガとして処理を行う。
②親画面の画面に表示されている明細情報を子画面(Modal画面)に受け渡したい。
③子画面起動前に親画面のエラーチェックを行い、エラーがある時は子画面を表示しない。
④子画面起動時に②で受け渡した情報を取得したい。
⑤子画面で確定(ボタンクリック)したら、子画面の情報を親画面に受け渡したい。
※同時に子画面終了
⑥子画面が終了したら、⑤で受け渡した情報を親画面に表示したい。可能であれば、方法論など頂けるとありがたいです。
以上、宜しくお願いします。
回答
-
試していませんが、以下のような流れを思い浮かべました。
1.親画面のコードビハインドで、親画面のOnLoad時に実行されるjsを仕込み、そのjsで子画面を起動する。
2.子画面では呼び出し元のWebフォーム、つまり親画面をContext.Handler経由で取得し、そこに値をセット。
3.子l画面を閉じる。
ただし、ModalにできるのはIE限定だったような記憶があります。今はどうなっているかわかりませんが・・・
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
- 編集済み trapemiyaModerator 2012年2月17日 7:22 誤記修正
- 回答としてマーク aviator__ 2012年2月17日 12:13
すべての返信
-
試していませんが、以下のような流れを思い浮かべました。
1.親画面のコードビハインドで、親画面のOnLoad時に実行されるjsを仕込み、そのjsで子画面を起動する。
2.子画面では呼び出し元のWebフォーム、つまり親画面をContext.Handler経由で取得し、そこに値をセット。
3.子l画面を閉じる。
ただし、ModalにできるのはIE限定だったような記憶があります。今はどうなっているかわかりませんが・・・
★良い回答には回答済みマークを付けよう! わんくま同盟 MVP - Visual C# http://d.hatena.ne.jp/trapemiya/
- 編集済み trapemiyaModerator 2012年2月17日 7:22 誤記修正
- 回答としてマーク aviator__ 2012年2月17日 12:13
-
シナリオがよく分かってないのでハズレかもしれませんが・・・
ASP.NET AJAX Control Toolkit の Modalpopup を使ってはいかが
ですか。ModalPopup Demonstration
http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/ModalPopup/ModalPopup.aspxこれなら見かけは 2 画面ながら 1 ページで処置するので、ポスト
バックしてサーバー側で親子間の情報の受渡しは容易にできます。
-
先のレスが前後してしまいました。
すでに解決済みとのことなので、余計なお世話かもしれませんが・・・
> 1-2.RegisterStartupScriptでJavaScriptから子画面を起動。
スクリプトで開くとポップアップブロックに引っかかりませんか?
また、質問に「子画面(Modal画面)」と書いてあったので、showModalDialog
メソッドを使ったと想像していますが、showModalDialog はブラウザ依存で
(最近は IE 以外でも開くようですが)、かつ、「showModalDialog」「問題」
でググってみると分かるようにいろいろ問題も多いです。その点は大丈夫で
すか?といって、window.open で普通に 2 画面開くと、2 画面同時に操作できてし
まうので、予期せぬユーザーの操作に対応できないという問題がありますが。というわけで、くどいようですが、1 ページで ModalPopup を使うことをお
勧めします。