- ベストアンサー
親ウィンドウのフォームの値を変更
showModalDialogでオープンした子画面から、returnValueで値を返すのとは違う方法で、親ウィンドウのフォームの値を変更したいと思っています。 (その子画面をオープンすると同時に、親ウィンドウのフォーム値を変更したいため) その際に window.opener.document.formA.hiddenA.value = "aaa" という風に記述しているのですが、「window.opener.documentはオブジェクトではありません」というエラーになってしまいます。window.openで開いた子画面からだと、この方法でできたと思うのですが・・・どうすれば変更できるでしょうか?そもそも、showModalDialogでオープンした画面から親ウィンドウの値を変更すること自体がダメなのでしょうか? よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
過去ログよんでますか?近しい内容がヒット しますよ。 具体的にはshowModalDialogの第二引数で自分自身を 渡してやると、子供はdialogArgumentsで受けられます。 こんな感じです。 //parent.htm <form name="formA"> <input type="button" value="開く" onClick="showModalDialog('child.htm',window,'dialogWidth=320px; dialogHeight=240px;');"><br> <input type="text" name="hiddenA"> </form> //child.htm <input type="button" value="親にaaaと書く" onClick="window.dialogArguments.formA.hiddenA.value='aaa'">
その他の回答 (2)
- papillon68
- ベストアンサー率61% (42/68)
#1です。 すみません、勘違いでした^^;
- papillon68
- ベストアンサー率61% (42/68)
sky_blueさん、こんにちは。 > window.opener.document.formA.hiddenA.value = "aaa" window.opener.formA.hiddenA.value = "aaa" ではどうでしょうか。
お礼
お返事ありがとうございます。 それも試してみたのですが・・・ ありがとうございました!
お礼
申し訳ありません。一応検索はしてみたのですが・・・ window.dialogArgumentsでできました。 とても助かりました。本当にありがとうございました!