• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:submitボタンで他のフレームを更新する方法)

submitボタンで他のフレームを更新する方法

このQ&Aのポイント
  • submitボタンで他のフレームを更新する方法が分かりません。
  • A.phpのフォーム内のsubmitボタンクリックのタイミングでA.phpはC.phpに遷移するが、同時にB.phpもD.phpに遷移させたい。
  • 方法をご存知のかたがいましたら教えてください。

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

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

ページ移動はlocation.hrefです。 <form action="C.php" target="AAA" onsubmit="top.BBB.location.href='D.php';">

ken2r
質問者

お礼

location.hrefで望みどおりできました。 有難うございました。

その他の回答 (1)

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

<frameset>があるhtml(又はPHP)はC.PHPと同じドメインですよね。 だったら、 C.PHPのjavascriptで自身のonloadのイベントで、親ページをチェックして、 BBBのsrc属性を書き換えてやればよいかと、思います。 C.PHPから見た親(window)は、window.parent で参照できます。 if(window.parent.location.href == "hoge"){ for (var i = 0; i < window.parent.frames.length; i++) { if(window.parent.frames[i].name="BBB") window.parent.frames[i].src="D.php"; } }

ken2r
質問者

お礼

ご回答有難うございました。 location.hrefで望みどおりできました。

ken2r
質問者

補足

ご回答有難うございました。 説明不足でした。 C.phpの処理時間が長いため、別フレームでD.phpを表示して進行状態を表示しようとしています。 教えて頂いたようものを真似てに以下の関数を作成したのち ////////////////////////////////////////////////////////// function Refresh() { for (var i = 0; i < window.parent.frames.length; i++) { if(window.parent.frames[i].name == "BBB") { window.parent.frames[i].src = "D.php"; } } return true; } ////////////////////////////////////////////////////////// C.phpに <body onload="return Refresh();"> を追加したり A.phpに <input type="submit" value="Start" onclick="return Refresh();">  を追加したのですが B.phpがD.phpに更新されません。 また、src属性の更新前の中身をalertでデバッグするとundefineとなっていました。 何かお気づきの点などありましたら教えてください。宜しくお願い致します。

関連するQ&A