- - PR -
showModelessDialog起動画面の重複起動防止
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-09-15 11:07
こんにちは、
親画面から、子画面のshowModelessDialogでオープンしてます。 しかし、親画面から同じ子画面が複数オープンしてしまうのです。 重複起動を防止する方法ってありますか? P.S.ShowModaldialogで実現可能ですが、 システムの仕組み上、ShowModaldialogは使用できません。 ご教授願います |
|
投稿日時: 2006-09-15 11:44
NAL-6295です。
対象となるwindowオブジェクトが存在していたら、開かない。 という手があります。 |
|
投稿日時: 2006-09-15 11:46
対象となるwindowオブジェクトが存在していたら、開かない。
とうのはどういった方法ですか? |
|
投稿日時: 2006-09-15 11:56
NAL-6295です。
showModelessDialogの戻り値である windowオブジェクトを保持しておいて、 次実行する時は、そのwindowオブジェクトの状態で判断すればよいでしょう。 windowオブジェクトがどういう状態だと、どう判断できるのかは容易に調べることができますので、自らで調べてみてください。 _________________ 「伝える」とは「人に云う」と書く。 http://d.hatena.ne.jp/NAL-6295/ |
|
投稿日時: 2006-09-15 12:00
NAL-6295さんありがとうございます。
やってみます! |
|
投稿日時: 2006-09-15 14:20
NAL-6295さん、度々すいません。
いろいろ調べてみたのですが、、、結局わからず途方にくれています。 具体的なサンプルはありませんでしょうか? 以下、ソースです。 var obj = window.showModelessDialog("XXXXX.htm" ,XXXX, XXXXX); これを、ボタンで起動してます。 |
|
投稿日時: 2006-09-15 14:55
「いろいろ」はやめましょうよ…調べてないように思われますよ。
次に来たときに、起動する前にobjがあるかどうか見ればいいんです。 |
|
投稿日時: 2006-09-15 15:02
すいません。。。
ちゃんと調べましたけど、言葉が悪かったですね。 ちなみに、解決しました。 ありがとうございました。 if ( win == null ) { win = window.showModelessDialog(param1, "aaa", param2); } else { if ( win.closed ) { win = window.showModelessDialog(param1, "aaa", param2); } } |
1