• ベストアンサー

form targetで新しいウィンドウをたちあげてから元に戻れる?

こんにちわ, 今HTMLの学習をしています。 質問なんですが,たとえば,あるページ(hoge.html)が <frameset cols=30%,70%> <frame name="left" src="hogeleft.html"> <frame name="right"src="hogeright.html"> としておき, そのhogeleft.htmlかhogeright.htmlの中で <form action="hoge2.html" method="POST" target="other">'; とターゲットフレームネームにないものを指定することで新しいウィンドウでhoge2.htmlを立ち上げられますよね。 そのあと,hoge2.htmlからもとのウィンドウのほうの左フレームにhoge3.htmlを表示したいときはどうすればよろしいのでしょうか。 <form action="hoge3.html" method="POST" target="left">'; でいいのでしょうか。 よろしく回答お願いいたします。

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

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

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

ご質問にあるように、ターゲットのフレームにフレーム名が与えられているのであれば、target属性でそのフレーム名を指定することで、form送信やリンクで指定したページをそのフレームに渡すことが出来ます。 おそらく、意図していることはJavaScriptを使わなくても、HTMLだけで実現できるでしょう。 リンク(a要素)やform要素などのtarget属性や、frame要素のname属性、JavaScriptのwindow.open()の第二引数で指定したウィンドウ名(ないしフレーム名)は、それが閉じられない限り、ブラウザの他のどのウィンドウ上でも、それをtarget指定することで、そのウィンドウ名(フレーム名)を持つウィンドウ(フレーム)に、目的のページを読み出すことが出来ます。 参考まで…

その他の回答 (1)

noname#10926
noname#10926
回答No.1
参考URL:
http://www.openspc2.org/reibun/javascript/sub_window/029/index.html

関連するQ&A

  • 1つのformで複数のactionをボタン1つで

    質問です。 1つのformで複数のactionを1つの送信ボタンで実行したいと思っています。 やりたいことは、1つのframeから他の2つのframeにデータを渡すことです。 フレームは以下のように3つに分かれています。 <frameset cols="60%, 40%"> <frame name="test1" src="xxxx.php"> <frameset rows="50%, 50%"> <frame name="test2" src="yyyy.php"> <frame name="test3" src="zzzz.php"> </frameset> </frameset> xxxx.php内のデータをyyyy.php, zzzzphpの2つに渡したいです。 <script language="javascript"> function send(){   document.form1.target = "test2";   document.form1.action = "yyyy.php";   document.form1.submit();   document.form1.target = "test3";   document.form1.action = "zzzz.php";   document.form1.submit(); } </script> <form name ="form1" method="POST" action="yyyy.php"> <input type="hidden" name="string" value="string" > <input type="button" value="送信" onClick="send()"> </form> 現在、上記のように試したり、過去の質問【一つのformから複数のactionを実行】url:http://okwave.jp/qa/q4234502.htmlを参考にしていますがうまくいきません。 わかる方アドバイスお願い致します。

  • form の target(

    form タグに オプションとして存在する target に関してです。 form method="POST" action="***.cgi" target="new" と記述すればsubmit実行時に結果を別ウィンドウに転送します ここまではいいのでが・・・・ submitボタンが複数ある場合(ボタンによって処理が違う) ボタンによって、このボタンは新しいウィンドウを開くが、 このボタンは開かない(同一ウィンドウ内に結果表示する) というように設定することはできますか? CGIとJavaSCRIPTの利用は可能です。 やはり別の form を立てるしかないのでしょうか? (cgiに渡す値が大量なため一つのformで実現したいとおもっています)

    • ベストアンサー
    • HTML
  • 左右に分かれているフレーム間での値の受け渡し

    こんにちは、はじめまして。 左右に分かれているフレーム(右にあるフレームを押下すると、左側のフォーム内の処理が走り、その結果(フラグなど)をサーバに送りたいです。 ソースは以下のようになっています。Javascriptで値の受け渡しをしたいのですが、どのようにすればsubmitができるかわかりません。どなたがご存知の方、よろしくお願いします。 ↓以下ソース↓ ~右側~ <form action="menu.php" method="post" name="form_menu"> <input type="button" value="test" onClick="push();">      省略 </form> <script language="javascript"> function push() {  --ここが分かりません-- ここで左側のフォームに送るフラグ値をセットして  それを左側のフォームにsubmitしたいです。 } </script> ~左側~ <form action="input.php" method="post" name="form_input">      省略 </form> ~フレーム~ <FRAMESET cols="80%,20%" frameborder="0"> <FRAME SRC="input.php" name="frame_input"> <FRAME SRC="menu.php" name="frame_menu"> </FRAMESET>

    • ベストアンサー
    • PHP
  • フォームの値をフレームの分割した画面に渡したい

    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
  • form actionで二つ送信先を指定する方法を教えて下さい。

    プログラム初心者です。 構造としては… index.php index2.php index3.php 上記があり、index.phpの中身は下記のようになっています。 <frameset rows="200,*"> <frame src="index2.php"> <frame src="index3.php"> <noframes> <body>未対応ブラウザ向け内容</body> </noframes> </frameset> index2.phpの中身は以下のようになっています。 <form action="<?php $_SERVER["SCRIPT_NAME"] ?>" method="post"> ID:<input type="text" name="id"><br> 内容:<input size="50" type="text" name="txt"><br> <input type="submit" value="登録・編集"> </form> 上記ですと、post情報がindex2.phpだけに送信されてしまい、index3.phpに情報が送る事が出来ません。 このようなやり方はないと思いますが… <form action="index2.php" action="index3.php" method="post"> このように出来ればいいと思ったのですが…思うように動作しません。 方法が分かる方は是非教えてもらえると助かります。 よろしくお願いします。

    • 締切済み
    • PHP
  • 送信ボタンを押して別ウィンドウを立ち上げるとき大きさを指定したい

    こんにちわ, 今HTMLの学習をしています。 今Submitボタンを押してtargetをnewにすると新しいウィンドウが立ち上がることはわかったのですが,その大きさを指定するにはどうすればよろしいのでしょうか。 javascriptなどのwindowopenを使用して値等を送信できるのでしょうか。 たとえば, <form action="hoge.php" method="POST" target="new"> <input type="hidden" name="hoge2" value="hogehoge"> : </form> などとかいてhoge.phpにhoge2の値・・・などを送って新しいウィンドウを立ち上げたいときです。 よろしくお願いします。

    • ベストアンサー
    • HTML
  • Flashボタンのターゲット設定がうまく出来ません。

    こんにちわ、初めて質問させていただきます。 フレームで左右2分割して左にFlash MXで作成したボタンを設置し、右にボタンをクリックした際にコンテンツを表示させたいのですがうまく出来ません。 ・フレームHTMLソース <FRAMESET cols="27%,73%" frameborder="NO" border="0"> <FRAME src="menu.html" name="menu_area"> <FRAME src="top.html" name="disp_area"> </FRAMESET> フラッシュのアクションには on (press) { getURL("pro.html", "disp_area"); } を入れましたがどうしてもボタンを押しても新しいウィンドウで出てきてしまいます。 分かり難く申し訳ありませんが、ご教授願います。

    • ベストアンサー
    • Flash
  • 画面全体に表示したい!

    まずは、下のソースをご覧下さい。 ------------------------------------------------- ファイル : sample1.htm <HTML> <HEAD><TITLE>CALL</TITLE></HEAD> <BODY> <a href="sample2.htm">フレーム分割</a> </BODY> </HTML> ------------------------------------------------- ファイル : sample2.htm <HTML> <HEAD><TITLE>MAIN_FL</TITLE></HEAD> <FRAMESET ROWS="64,*,64"> <FRAME SRC="top_frame.cgi" NAME="top" TARGET="A1"> <FRAMESET COLS="540,*"> <FRAME SRC="left_frame.cgi" NAME="right" TARGET="A2"> <FRAME SRC="right_frame.cgi" NAME="left" TARGET="A3"> </FRAMESET> <FRAME SRC="und_frame.cgi" NAME="under" TARGET="A4"> <NOFRAMES><BODY>このページにはフレームが使用されていますが、お使いのブラウザではサポートされていません。</BODY></NOFRAMES> </FRAMESET> </HTML> ------------------------------------------------ "und_frame.cgi"を実行した後、表示されたHTML <HTML> <HEAD><TITLE>UNDER_FRAME</TITLE></HEAD> <BODY> <FRAME NAME="BACK_TOP" METHOD="POST" ACTION="sample1.htm" TARGET=> <INPUT TYPE="HIDDEN" NAME="H1" VALUE="AAA"> <INPUT TYPE="HIDDEN" NAME="H2" VALUE="BBB"> <INPUT TYPE="SUBMIT" NAME="S1" VALUE="トップへ"> </FORM> </BODY> </HTML> ------------------------------------------------ 以上です。これを実行しますと4つのフレームに分割されまして、 一番下のフレームには「トップへ」というサブミットボタンが表示されます。 そこでボタンを押されたら一部のフレームだけじゃなく、 画面全体を"sample1.htm"を実行した画面に遷移したいのですが、 どのようにやればよろしいのでしょうか?

    • ベストアンサー
    • HTML
  • VBでのInternetExplorerのオブジェクトへのアクセスについて教えてください!

    はじめて質問させていただきます。 現在VB(WHS?)で自動巡回プログラムを作成しております。 その中で2つ、どうしてもできないことがあるので どうぞよろしくお願いいたします。 1)formも存在している中でformに入っていないオブジェクトの指定方法 ---------------------------------  例:  <FORM name="form1" method="post" >   <INPUT type="text">   <INPUT type="button" value="ボタン1">  </FORM>  <INPUT type="ここに文字をセットしたい"><INPUT type="button" value="これを押したい"> ---------------------------------  ボタン1とかかれたボタンには、  CreateObject("InternetExplorer.Application").document.form1.elements(1).click  などでアクセスすることができますが、フォームに入っていないオブシェクトにアクセスできません。 2)frameの向こうがframeで、その先のソースのオブシェクトの指定方法 ---------------------------------  手前のフレーム  <html>  <frameset rows="*,*">   <frame src="f1.htm" name="f1">   <frame src="f2.htm" name="f2">  </frameset>  </html>  ---------------------------------  奥のフレーム  <html>  <frameset cols="*,*"> <frame src="f1-1.htm" name="f1-1"> <frame src="f1-2.htm" name="f1-1">  </frameset>  </html> ---------------------------------  この状態でf1-1.htm上のオブジェクトにアクセス  (ボタンを押したり値をセット)したいのです。  いろいろためしたのですが、どうしてもできず、  投稿させていただきました。  よろしくお願いいたします。

  • フレームで左右に分割したページにデータを渡すには?

    こんにちは! 教えて下さい。 A.asp(フレーム無し)というファイルのテキストボックスのデータをフレームで左右に分割されたB.asp(Right.asp (name=Right)とLeft.asp(name=Left))のLeft.aspに渡したいのですがうまくいきません。 A.aspのフォームのタグ <form name="form1" action="B.asp" method="post" target="left"> でいけるかなと思ったんですがダメでした。

専門家に質問してみよう