![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.4ベストアンサー
- 回答日時:
2番目のフレームのHTML構成を
<FORM name="f1">
<INPUT type="text" name="t1">
</FORM>
とします。
このとき
window.opener.parent.frames[1].document.f1.t1.value = 値;
でOKです。
(IE5.0、NN4.7で動作確認済み)
window.opener.parentで、4つのフレーム分けをしているHTMLへアクセスし、配列framesで各フレームにアクセスします。
そこから下は、各HTML内でのオブジェクトへのアクセスと同じです。
HIROYOさんの言うように2番目は実親なのでopnerでもアクセスできますが、他のフレームからサブウィンドウが開かれた時に対応できないので、このようにフレーム群の親までアクセスした方が良いでしょう。
(例えこのサブウィンドウが他のフレームから開かれなくても、別のサブウィンドウを開くことになった時に流用できますので、やはりこのようにします。)
No.3
- 回答日時:
すいません、2番目のフレームが呼び出し元だったんですね。
見逃していました。(^^;;
それでしたら、2番目と3番目とでは、アクセスの仕方が違います。
まず、2番目のフレームは子画面の呼び出し元になりますので、
window.opener.document.formxxx.xxx.value=xxx;
でアクセス可能です。
そして、3番目のフレームは、
window.opener.parent.frames[2].document.formxxx.xxx.value=xxx;
でアクセスできます。
window.openerは、呼び出した元の画面へのアクセスになります。
2番目のフレームから子画面を呼び出しているのであれば、window.openerは2番目のフレームになります。
他のフレームにアクセスしたい場合は、window.openerの後に、該当フレームからアクセスしたい他のフレームへのアクセスを付け足してやればOKです。
つまり。(笑)
2番目のフレームから3番目のフレームにアクセスする場合、
parent.frames[2].document.formxxx.xxx.value=xxx;
と書きますよね?
それにwindow.openerを付けてやればいいって事なのです。(^-^)
No.2
- 回答日時:
こんにちは。
子画面から
window.opener.top.[framename].document.[formname].[textname].value
で出来ますよ。
[framename]=フレームの名前
[formname]=フォームの名前
[textname]=INPUT TEXTの名前
試してみましたが、
「'window.opener.top'はオブジェクトではありません」
というエラーが発生してしまいます。
唯一エラーが発生しないのが
「window.top.opener.document.formname.textname.value=XXX」
という方法ですが、これでは3番目のフレームに値をセット
することができません。
「window.top.opener.framename.document.formname.textname.value=XXX」
とすると
「'window.top.opener.framename.document'はオブジェクトではありません」
というエラーが発生してしまいます。
ちなみに
「window.top.opener.frames[1].document.formname.textname.value=XXX」
とすると
「'window.top.opener.frames.1.document'はオブジェクトではありません」
というエラーが発生してしまいます。
このことから何かお分かりになるでしょうか?
No.1
- 回答日時:
documentが抜けてませんか?
・・・frames[2].document.formxxx...
documentを入れても変わりませんでした。
ちなみに
「window.top.opener.frames[1].document.formname.textname.value=XXX」
とすると
「'window.top.opener.frames.1.document'はオブジェクトではありません」
というエラーが発生してしまいます。
[]が化けてしまってるのでしょうか?
それとも単なる表示上の不具合なのでしょうか?
以上、何かこのことからお分かりになったら、教えて下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 画像編集・動画編集・音楽編集 動画をディスク作成すると画像が乱れる。 4 2022/06/24 07:49
- C言語・C++・C# 【C++】IDirect3DSurfaceのディープコピーは可能ですか? 1 2022/07/06 02:47
- Safari(サファリ) インターネットの画面を左右に寄せて閲覧する方法を教えてください 1 2022/05/18 21:03
- iPhone(アイフォーン) iphoneで撮影した写真、動画を連番のファイル名で保存したい。 1 2022/04/28 02:12
- アプリ Edgeを操作するアプリについて 4 2023/05/11 22:48
- 写真・ビデオ iPhone12を使っていたのですが液晶が壊れてしまいました、画面も変な線が縦に入ってしまいロック画 1 2023/01/10 02:01
- マルウェア・コンピュータウイルス Microsoftサポートをかたる詐欺について 5 2022/03/22 19:22
- デスクトップパソコン outlookのメール:outlook.comの表示方法を教えて下さい 1 2022/03/28 00:30
- 銀行・ネットバンキング・信用金庫 暗証番号無しで出金 2 2023/03/20 10:44
- Y!mobile(ワイモバイル) iPhoneからAndroidへ機種変。oppoReno7という機種ですが、データ移行をしようとする 2 2023/06/10 21:56
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
他のページ更新
-
フレーム分割領域のサイズを変...
-
セレクトメニューでリンクの際...
-
複数フレームで「戻る」ボタン...
-
Javaでテトリスを作っています。
-
同期をとる
-
JavaScriptでできない事がある...
-
"rows", "*,100%"って何の記述?
-
スマホ上で、左右スワイプで次...
-
フレーム分割表示について
-
<a href="#" …>の意味を教えて...
-
UAによるリダイレクト
-
外部読み込みで動かないときの...
-
Cookieの回数で閲覧制限、javas...
-
色の指定で配列を使いたい
-
DOMで生成したタグにCSSが適用...
-
小ウインドウのスクロールバー
-
javascriptでalertの文字列をコ...
-
CGIフォーム一定時間過ぎる...
-
ページによって表示位置がずれ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
インラインフレームで表示され...
-
インラインフレームをドラッグ...
-
HTMLでサブフレームから親のス...
-
フレームを跨ぐドロップダウン...
-
jqueryを利用してインラインフ...
-
別ページのインラインフレーム...
-
親ウィンドウの別フレームを子...
-
openerは使えないのでしょうか?
-
フレーム内のiframeのデータの...
-
エラー:書き込みができません ...
-
ブラウザのURLアドレス文字表記...
-
フレーム分割領域のサイズを変...
-
フレームで隠れるポップ
-
フレームのあるHPでプルダウン...
-
別フレームのページが読み込み...
-
HTMLフォームボタンによるター...
-
URLを引数とし、フレーム間で渡...
-
JavaScriptでできない事がある...
-
他のページ更新
おすすめ情報