• ベストアンサー

フレームで指定している送信先にPOSTで値を送ることは可能でしょうか?

<frameset rows="120, *,">    <frame src="page1.html" name="frm1">    <frame src="POSTで値を送信" name="frm2"> </frameset> という感じで、フレームの1つに値を渡したいと思っています。 データ量が多いためGETでは渡せず困っています。 フレームで指定した先に、POSTで値を渡すことは可能でしょうか? よろしくお願いします。

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

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

一応確認なんですが、1つのページにフレームが2つ(frm1とfrm2)があって、frm1のフォームの中身をfrm2のcgiへ渡す、ということでよろしいんですよね? それでしたら、 <frameset rows="120, *"> <frame src="page1.html" name="frm1"> <frame src="blank.html" name="frm2"> </frameset> としておいて(blank.htmlは何でもOK)、page1.htmlの中でフォームを用意し、 <form action="hoge.cgi" method="post" target="frm2"> とすると、frm2の中にhoge.cgiが読み込まれるというようになります。

sky_blue
質問者

お礼

下記URLにある方法で何とかしました。 (Framesetのページから、直接POST送信が可能なのかどうかは現在も不明です) Framesetのページには、フォームを出力するJavaScriptの関数を出力。 (その関数は、Windowオブジェクトを引数にします) FrameのSRCで指定したページでは、Framesetにあるフォームの出力するJavaScriptを実行。 (引数には[this]を渡す) フォームを出力後に、本来FrameのSRCに指定したかった送信先へPOSTで飛ばす。 http://www.tohoho-web.com/lng/199907/99070120.htm

sky_blue
質問者

補足

説明不足で申し訳ありません。 MotoPage.html  --POSTで送信されるフォームがあるページ(フレームには分かれていません)     ↓ NextPage.html  --MotoPage.htmlから呼び出されるページ(親フレーム)   このページが      <frameset rows="120, *,">         <frame src="page1.html" name="frm1">         <frame src="POSTで値を送信" name="frm2">      </frameset>   となります。 つまりフレームが複数あって、別のフレームに値を渡すのではなく、フレームのないページからフレームのあるページに遷移します。 もし何かご存知なことがありましたら、また教えて頂けたらと思っています。 再度のご投稿ありがとうございました。

その他の回答 (2)

  • kosa
  • ベストアンサー率25% (379/1464)
回答No.2

imgタグを使って<img scr="POSTで値を送信">で画像を読み込むことでアクションが可能なような気がしますが、正直試した事が無いので出来ますと自信を持って言えません。 Javaスクリプトで可能なような気もします。 http://www.usagi-js.com/ 右側メニューにある「フォーム属性」「フレーム属性」あたりがヒントがあると思います。 各項目に「みてみる」というサンプルがあるのでわかりやすいかと思います

sky_blue
質問者

お礼

ご返答ありがとうございます。 よくサイトのカウンタ(を増やす)などで使われる方法ですよね・・・ ただこれを、フレームで分かれたページを読み込ませるのと同時に行えるのかどうか、というところでしょうか・・・ もう少し調べてみます。 ありがとうございました。

回答No.1

<form action="hoge.cgi" method="post" target="frm2"> これでできるはずですが。

sky_blue
質問者

補足

お返事ありがとうございます。 ということは、 <form action="hoge.cgi" method="post" target="frm2"> <input type="hidden" name="value_1" value="1">    ・・・ </form> <frameset rows="120, *,">    <frame src="page1.html" name="frm1">    <frame src="" name="frm2"> </frameset> というコーディングで良いのでしょうか?そうすると送信のキックはどこからかかるのでしょうか? 申し訳ありませんが、前後のコーディングも合わせて教えて頂けたら・・・と思っています。 よろしくお願いします。

関連するQ&A

専門家に質問してみよう