• ベストアンサー

子ウィンドウからのフレーム操作について

お世話になります。 左右2つのフレームの操作を子ウィンドウから行いたいと思っています。 右のフレームから子ウィンドウを開き、子ウィンドウから左のフレームのテキストボックスへ値を代入するにはどうしたら良いのでしょう? よろしくおねがいいたします。

  • Taaat
  • お礼率83% (5/6)

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

例として テキストボックスのあるフレームを「base」、子ウィンドウを呼び出すフレームを「test」とします。 base側に「txtTest」というテキストボックスがあるとします。txtTestのあるFormの名前は「Form1」とします。 そこに子ウィンドウのボタンをクリックして、値をtxtTestに代入する処理が以下になります。 ----------------------------【index.html】 <html> <head> <title></title> </head> <frameset cols="50%,*"> <frame src="1.html" name="base"> <frame src="2.html" name="test"> <NOFRAMES> このページはフレーム対応のブラウザでご覧ください。 </NOFRAMES> </FRAMESET> <!--/main--> <body> </body> </html> ----------------------------【フレーム[base]】-> 1.html <HTML> <body> <form name="Form1"> <input type="text" name="txtTest"> </form> </body> </HTML> ----------------------------【フレーム[test]】-> 2.html <HTML> <script language="javascript"> function openwindow(){ window.open('3.html','kodomo','width=300,height=200'); } </script> <body> <a href="#" onClick="openwindow();">TEST</a> </body> </HTML> ----------------------------【子ウィンドウ】-> 3.html <HTML> <head> <script language="javascript"> <!-- function fncTest(){ // txtTestに12345をセットする opener.top.base.document.Form1.txtTest.value=12345; return false; } --> </script> </head> <body> <form name="thisForm"> <input type="button" value="てすと" onClick="return fncTest();"> </form> </body> </HTML> ---------------------------------------- 分かりづらかったらすみません。

Taaat
質問者

お礼

有難うございました。助かりました。

その他の回答 (1)

  • kaiu
  • ベストアンサー率20% (65/315)
回答No.2

こんにちは。 フレーム関連、多いですね。 下の方が具体的に書いていらっしゃいますので、 サイトを紹介します。 こちら色々と参考になると思います。

参考URL:
http://www.openspc2.org/reibun/javascript/#10
Taaat
質問者

お礼

有難うございました、参考にいたします。

関連するQ&A

  • フレームから親ウィンドウへのデータ受け渡しについて

    フレームから親ウィンドウへのデータ受け渡しについて質問なんですが、 Aという親ウィンドウがあり、親ウィンドウ内にBというインラインフレームがあります。 (1)Bインラインフレームでテキストボックスに値が入ったと同時に、Aにあるテキストボックスにも値を挿入する。 (2)A親ウィンドウのボタンをクリックすると、Bインラインフレーム内のテキストボックスからA親ウィンドウのテキストボックスに値を取得する。 この二つの方法がよくわかりません。 どなたかおわかりの方がいらっしゃれば教えてください。 また、フレーム操作の詳しい解説が書いてあるおすすめのHPなどがあれば教えてくださいm(__)m

  • 別フレームのテキストボックスに説明表示

    フレームを使ってHPを作っていますが、 どうにもできないところがあり困っています。 左右に分割していて、 左フレーム name="menu" 右フレーム name="main" で、左フレーム内のリンクをオンマウスすることで、 右フレームのテキストボックス name="readme" に説明文を表示させたいのです。 どなたか教えていただけませんでしょうか?

    • ベストアンサー
    • HTML
  • 子ウィンドウのデータを親ウインドウに

    子ウィンドウのチェックボックスの内容を親ウィンドウに代入 子ウィンドウのチェックボックスの複数選択内容を親ウィンドウのテキストボックスに、カンマ区切りで複数代入したい。のですが。

  • 子ウィンドウの操作について(VC++)

    Windows98 Visual C++6.0 雛型でMDIを作成して、アクティブな子ウィンドウに記述されている文字列を操作したいと思っています。 ダイアログボックスを表示して、その中のボタンを押したら、アクティブな子ウィンドウから文字列を取得しある処理した結果をダイアログボックスのtextに表示したいと考えています。 今のところダイアログボックスを表示する所まで出来ています。 問題点は 1.アクティブな子ウィンドウのハンドルはどのようすれば取得できるのでしょうか? 使用すべき関数名等を教えてください。 2.アクティブな子ウィンドウに記述されているデータを取得するには、GetWindowTextやsendMessageで出来るのでしょうか?(なるべくならSJISで処理をしたいと考えているのですが。) わかりずらい質問かも知れませんが宜しくお願いします。

  • テキストの値が代入された後にイベントを発生させたい

    親ウィンドウと子ウィンドウがあります。 親ウィンドウのテキストボックスのvalueに、子ウィンドウの関数内で値を代入します。 親ウィンドウでテキストボックスの値が書き換えられますが、そのときにイベントを発生させたいのですが、 何か良い案はありますでしょうか? なお、子ウィンドウでは、親画面のテキストボックスに値を代入するのみで、 親ウィンドウの関数を呼び出すことはできない とします。

  • frame間の値の受け渡し方法

    環境はxp、apache2、php5、Postgresql8.2です。 1台のPCをサーバ&クライアントにしています。 ただ今PHPとPostgresqlの勉強をしています。 --------------------------- frameで左右に分かれています。 「左がメニュー画面」 「右がデータを表示する画面」 --- <frame name="hidari" src="aa.php"> <frame name="migi" src="ee.php"> メニュー用のPHPに --------------------------- aa.php(左のメニュー画面) 「number」というテキストボックスに入力して、 「検索」をクリックすると、 右の画面にデータが表示されます。 <FORM name="Form1" METHOD=post target="migi"> number<INPUT TYPE=TEXT NAME=number SIZE=5> <a href="./ee.php?func=ads" target="migi"><span style="color:#DB7093">検索</style></a> --------------------------- ee.php(左のデータ画面) テキストボックス「number」の値を受け取るために echo $_POST['number']; 「number」の値が表示されません。 どのようにすれば受け取れますか?

    • ベストアンサー
    • PHP
  • テキストボックスに入力されたURLのページを隣のフレームに表示させるには…?

    すいません、タイトルでうまく説明できなかったのですが、左右で二分割されているフレームがあるとします。そして、左のフレームにはテキストボックスとボタンが配置されています。このテキストボックスにURLを入力し、ボタンを押すと右側のフレームにそのページが表示される…という事をやりたいのですが、どうすればいいでしょうか?どなたかご存知の方いらっしゃいましたら宜しくお願い致します。

  • 上下に別れたフレームで下のフレームから上のフレームの値を参照するには?

    上のフレームのテキストボックスの値を 下のフレームで参照するにはどう指定したら よいのでしょうか?

  • 子ウィンドウの操作

    処理概要:親ウィンドウからボタンクリック時にjavascriptのみで      子ウィンドウを作成し、遷移させた後、子ウィンドウの      フォームをサブミットする。 -------以下ソース-------- var url = "/index.html"; hWin=window.open("",""); window.hWin.location.href=url; setTimeout(a,10000); function a(){ window.hWin.document.form.submit(); // window.hWin.document.form.name.value = "住友"; // window.hWin.document.form.button1.click(); }  * index.html にはformというフォームがあり、nameという   テキストボックスとbutton1 というボタンをフォーム内に   持っているとします。 以上のような簡単なものですが、7行目のsubmitでこけます。 window.hWin.document.formがないようでヌルポになります。 親から子ウィンドウのサブミットをjavascriptだけで制御 できないでしょうか。 また、できればコメントアウトしているところ、 DOM要素を指定して値をテキストボックスに入れたり フォームをボタンによりクリックしてサブミットもしたいです。 ちなみに、setTimeout を利用しているのは、遷移が終わり、子ウィンドウの要素が確実に作成されている状態にするためです。 また、遷移先にSSLを設定している部分と設定していない部分があり、javascriptの途中で"ここに遷移していいですか?"みたいなダイアログが表示されます。"混雑しているページの処理"をインターネットオプションから"有効"にする(ダイアログを表示するではなく)と表示されないのですが、奨励されないので 他にいい方法はないでしょうか。

  • 親ウィンドウがフレームの場合の子からの操作

    親ウィンドウが、navi.html, window.html というフレームをもったA.html だった場合、その window.html から子ウィンドウを出して、子ウィンドウから親ウィンドウの全体(A.html) のURLを変えたい場合はどのようなスクリプトになるのでしょうか? どうしても window.html の中だけのURLが変わってしまう、もしくは新しいウィンドウができてしまいます。 宜しくお願いします。

専門家に質問してみよう