• ベストアンサー

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

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

  • HTML
  • 回答数3
  • ありがとう数2

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

  • ベストアンサー
回答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

  • フォームの値をフレームの分割した画面に渡したい

    login.asp のフォームからselect.aspに値を持って行きたいと思っています。 ということでlogin.aspのフォームのActionは下記のようにしました。 <FORM METHOD="POST" action="http://hoge.com/admin/select.asp"> ただ、上の記述だと、login.aspから飛んで表示される先もselect.aspになってしまいます。 本当は、下記の記述になっているframe.aspに飛んで、login.aspのフォームの値をselect.aspに持っていきたい のですが、いい方法はありませんでしょうか。 <frameset rows="59,252" cols="*" framespacing="1" frameborder="yes" border="0" bordercolor="#FFFFFF"> <frame name ="SEL_FRM" src="select.asp"> <frame name ="RST_FRM" src="index.asp"> </frameset>

    • ベストアンサー
    • HTML
  • HPのフレーム

    境界線の色を変えて、細くしたいのですが、 色は変えられたのですが、細くすることができません。 今フレームを呼び出す?ために 『<FRAMESET rows="100,*"> <FRAME src="frame-ue.htm" name="ue">        <FRAMESET cols="100,*"> <FRAME src="frame-hidari.htm" name="hidari"> <FRAME src="frame-main.htm" name="main"> </FRAMESET> <NOFRAMES> <BODY> <P>このページを表示するには、フレームをサポートしているブラウザが必要です。</P>』 としていて、色を変えるのに、 『<FRAMESET rows="15%,85%" BORDERCOLOR="RED"> <FRAME SRC="frame-ue.htm" NAME="ue"> <FRAMESET COLS="15%,85%" BORDERCOLOR="RED"> <FRAME SRC="frame-hidari.htm" NAME="hidari"> <FRAME SRC="frame-main.htm" NAME="main">』 こうしています。 どうすれば細くできますか? もう1つこうゆうタグを使えばいいのでしょうか? わかる方、よろしえれば教えてください。

  • フレーム分割領域のサイズを変更する

    HTMLのframesetタグでフレームを分割してHTMLを 表示させることができます。例えば... <frameset rows="40%,60%"> <frame name="frm_01" target="f_left" src="left.htm"> <frame name="frm_02" target="f_right" src="right.htm"> </frameset> と記述すると、ウィンドウ左にleft.htmを40%、ウィンドウ右にright.htmを 50%割合で表示します。これらを何かHTML上のボタンをクリックされる などのイベントが生じた場合に、ウィンドウ分割してある比率を(例:left.htm40%→60%)の ように変更したいのですが、そのようなことはできないものでしょうか?

  • フレーム分けのタグですが、上下分割の境界線を消せないでしょうか?

    <HTML> <HEAD> <TITLE> [上と下左右分割フレームの基本型] </TITLE> </HEAD> <FRAMESET ROWS="30%,70%"> <FRAME SRC="ue.html" NAME="top"> <!-- 上に表示するHTMLの指定 --> <FRAMESET COLS="30%,70%"> <FRAME SRC="hidari.html" NAME="b_lt"> <!-- 下左に表示するHTMLの指定 --> <FRAME SRC="migi.html" NAME="b_rt"> <!-- 下右に表示するHTMLの指定 --> </FRAMESET> </FRAMESET> </HTML>

    • ベストアンサー
    • HTML
  • フレームがばらばらに・・・

    ホームページを上下二つのフレームに分けて作ったのですが、 ウィンドウを大きくすると二つが離れてしまいます。 <frameset rows="430,88" frameborder="NO" border="0" framespacing="0"> <frame src="top_frame_main.html" name="mainFrame" marginheight=0> <frame src="top_frame_navi.html" name="naviFrame" marginheight=0> </frameset> 上の二つのフレームが同じ距離を常に保つようにするには どうすればよいでしょうか?教えてください!

    • ベストアンサー
    • HTML
  • フレームのことなんですが

    説明しにくいので、もしわかりにくければ下記のソースを参考に ご回答いただけるとありがたいです(4つ有効なリンクが貼ってあります)。 四分割のフレームをつくりました。 その内の一つにyahoo.co.jpを設定してあります。 そのyahooの右側の「個人ツール」の箇所だけ 焦点をあてて表示させる方法はありませんか? 一目でメールチェックができるようにしたいので。 なお、HP作成ではなく、まったくのローカルで使うものです。 <HTML> <HEAD> <TITLE>LINK</TITLE> </HEAD> <FRAMESET COLS="50%,50%"> <FRAMESET ROWS="42%,58%"> <FRAME SRC="http://www.google.co.jp" NAME="google" SCROLLING="auto" > <FRAME SRC="http://www.goo.ne.jp" NAME="goo" SCROLLING="auto" > </FRAMESET> <FRAMESET ROWS="73%,27%"> <FRAME SRC="http://www.yahoo.co.jp" NAME="yahoo" SCROLLING="auto" > <FRAME SRC="http://www.infoseek.jp" NAME="infoseek" SCROLLING="auto" > </FRAMESET> <NOFRAMES> <BODY> 本ページはフレームで構成されております。<BR> フレーム未対応のブラウザでは表示できませんのでご了承ください。</BODY> </NOFRAMES> </FRAMESET> </HTML>

    • ベストアンサー
    • HTML
  • 曼荼羅3×3の9フレームの作り方

    ホーム頁作成ソフトでは3フレームまでしか有りませんでした。 <FRAMESET rows=*,* frameBorder=yes> <FRAME name=top src="Mandara02.files/page002.html"> <FRAMESET frameBorder=yes cols=*,*> <FRAME name=lbottom src="Mandara02.files/page003.html"> <FRAME name=rbottom src="Mandara02.files/page004.html"> </FRAMESET><NOFRAMES> <BODY bgcolor=#ffffff text=#000000 link=#0000ff vlink=#800080 alink=#ff0000> <A name="_pageHead"></A> <TABLE align="center" border="0" width="640" cellpadding="0" cellspacing="0"> <TBODY> <TR align="left" valign="top"> <TD align="left" valign="top" width="640" nowrap> </TD> </TR> このHTML記述のようなもので9フレームの作り方をご指導ください 参考書は持っていますが理解出来ていません。

  • フレームがきれいになりません。

    下記のように上と、左右で3フレームを分けて表示していますが、 <frameset rows="60,*" border="0" frameborder="0" framespancing="0"> <frame src="title.html" name="head" scrolling="no"> <frameset cols="130,*" border="0" frameborder="0" framespancing="0"> <frame src="menu.html" name="menu" scrolling="auto"> <frame src="cont.html" name="main" scrolling="auto"> </frameset> </frameset> *で表示しても、左のフレームの下にスクロールバーが出てしまいます。どのようにすれば直るのか初心者のため分からなくて困っています。もし分かる方是非教えてください。 現状はこんな感じになってしまっています↓ http://www.twinklecloset.com/index.html

  • フレーム内の要素へのXPATHはどのように書けばよいのでしょうか?

    フレーム内の要素へのXPATHはどのように書けばよいのでしょうか? また、それは可能なのでしょうか? 実際には、firefoxのgreasemonkey で、フレームを使ったページ内のテーブル内のデータを取得したいと考えています。 下記のようにやればできるかと思ったのですが、できないようです・・・ var xpath ='/html/frameset/frame[2]/html/body/table/tbody'; var tbody = document.evaluate(xpath, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue.contentDocument; alert(tbody.rows[0].cells[0].firstChild.data); 対象としているサイトの構造は、下記のようになっています。 2つのフレームを含むソース <HTML> <HEAD> <meta http-equiv="Content-Type" content="text/html; charset=x-sjis"> <TITLE>ほげほげ</TITLE> <FRAMESET ROWS="88,*"> <FRAME SRC="frame1.html" NAME="FRM1"> <FRAME SRC="frame2.html" NAME="FRM2"> </FRAMESET> </HTML> frame2.html <HTML> <HEAD> <meta http-equiv="Content-Type" content="text/html; charset=x-sjis"> <TITLE>フレーム2</TITLE> </HEAD> <BODY> <TABLE border="0"> <TR><TD>データ1</TD>・・・</TR> ・・・・・ </TABLE> </BODY> </HTML> 以上です。 はたしてできるのかどうかもわからない状態です。 どうぞ宜しくお願い致します!!!

  • フレームについて

    下記のようなフレームの設定をした場合、ウィンドウが全画面だった場合はちゃんと表示されるのですが、中間ぐらいだった場合は上記フレーム、下記フレームとも少し隠れた表示になってしまいます。 これをどうか解消できる方法はないのでしょうか?  推測ではパーセント指定的な物になっているからではと思っているのですが、どうでしょうか お願いします。 <FRAMESET rows="7,91,3" frameborder="0" border="0" framespacing="0"> <FRAME src="index01.html" name="1" scrolling="no"> <FRAME src="index02.html" name="2"> <FRAME src="index03.html" name="3" scrolling="no"> <NOFRAMES>

専門家に質問してみよう