- - PR -
Javaで子画面から親画面のフレームページの一部を変える
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-05-26 14:31
ご教授下さい。
まずやりたいことは、件名にあるとおり、「Javaで子画面から親画面のフレームページの一部を変える」という作業です。 F1、F2というフレームから成る親画面Aがあります。F2から子画面Bのログイン画面をサーブレットで呼び出し、ログインに成功した時に、親画面AのフレームF1をリロードしたいのですが、果たしてJavaで可能でしょうか? dispatcherにそのような機能が含まれているかよくわからないのですが、何かよいやり方があれば教えて頂けないでしょうか。 よろしくお願いします。 | ||||
|
投稿日時: 2006-05-26 15:28
JavaScriptを使わないでやる。ということですか。? | ||||
|
投稿日時: 2006-05-26 15:38
はい。そうです。Javaのみ使ってやるということです。
子画面でJavaScriptのopenerを利用して、親のフレームページを変えるやり方もあるかと思いますが、今回はログイン後の画面がこちらで管理しているファイルではない(他サーバー)にあるので、それが出来ないのです。なので、サーブレットを利用し、ログインの確認が取れ、dispatcherする前に、親ウィンドウを変えたいというわけです。 | ||||
|
投稿日時: 2006-05-26 15:51
理解が悪く、申し訳ないのですが、確認させて下さい。
A(親)画面はSum+Goさんの管理対象で、 B(子)画面はSum+Goさんの管理対象外ということでしょうか。 | ||||
|
投稿日時: 2006-05-26 16:23
>理解が悪く、申し訳ないのですが、確認させて下さい。
とんでもないです!こちらこそ説明が下手で申し訳ないです! まず、画面遷移についてまとめます。 ■A(親画面)からB(子画面=ログイン画面)へ遷移する。 ■B(ログイン画面)でログインできたら、ログイン画面がC画面に変わる。(C画面はログイン画面と同じウィンドウになります。) 次にファイル管理対象についてまとめてみました。 ■A(親画面)、B(子画面=ログイン画面)はこちらで管理してます。 ■C画面のみ他で管理している。 という状況です。C画面は「いじれない」という前提で対処しなければいけない状況です。 | ||||
|
投稿日時: 2006-05-26 16:44
申し訳ないです。
これだけ聞いておきながらJavaScriptを使わない方法が思いつきませんでした。 的外れかも知れませんが、サンプルを掲載しておきます。 (AのみJavaScriptを使用) A画面------------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"/> <title>parent</title> <script type="text/javascript"><!-- var child; var isChange = false; function openChild() { child = window.open("b.html", "b"); waite(); } function waite() { if (!child.closed) { if (String(child.location).indexOf("b.html") > -1) { setTimeout("waite()", 1000); return; } } alert("changed"); } // --></script> </head> <body> <a href="javascript:openChild();">子画面を開く</a> </body> </html> -------------------------------------A画面 B画面------------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"/> <title>child</title> </head> <body> <h1>子画面</h1> <a href="c.html">子画面2へ移動</a><br> <input type="button" value="close" onclick="window.close();" /> </body> </html> -------------------------------------B画面 C画面------------------------------------- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"/> <title>child2</title> </head> <body> <h1>child2</h1> </body> </html> -------------------------------------C画面 申し訳ないですが、これくらいしか思いつきませんでした。 | ||||
|
投稿日時: 2006-05-26 17:24
返信ありがとうございます。
やっぱりJava上では制御することは出来ないのでしょうかね。。。 もう少し考えてみます。。。 | ||||
|
投稿日時: 2006-05-26 17:47
お力添えできず、申し訳ございませんでした。 |