宜しくお願いします。
メインウィンドウからリンクを貼り、そこをクリックしてサブウィンドウを出します。そのサブウィンドウに入力フォームを付けて、必要な情報を入力してもらい、送信ボタンを押すと、POSTで送信されて、元のメインウィンドウで送信内容が確認出来る様にしたいのですが、やり方が良くわかりません。
とある本を見て、『opener.closed』というのを使えば出来るかと思い試したのですが、URLをメインのウィンドウに送る事は出来ても、POSTのデータを送信する方法までわかりませんでした。
どなたかご教授の程、宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
以下のような感じでどうでしょう?
(1)メインウィンドウに名前を付けておく。
<html>
~
~
<script type="text/javascript">
<!--
window.name="hoge"
//-->
</script>
</head>
(2)サブウィンドウで送信するときにtarget(=メインウィンドウのname)を指定する。
(送信したらサブウィンドウを閉じる)
<form action="~" method="post"
target="hoge"
onsubmit="window.close()"
>
ご返信遅くなりました。
ありがとうございます。早速試したのですが、メインウィンドウ自体を更新してしまうので、ちょっとうまくいかなかったです。。。
ありがとうございましたm(__)m
No.4
- 回答日時:
何度も失礼します。
#3のご要望を読むと、私の回答は#2のようになるんですが・・・
#2のお礼欄ではメインウインドウ自体が更新されて困るという・・・
> データをPOSTで送信し、反映させている状態を作りたい
というのであればウインドウ自体を更新するのが一般的だと思うのです。
メインウィンドウがフレーム構成になっているとか、インラインフレームを使っているとかで、一部フレームだけを更新したいのでしょうか?(そうならばサブウィンドのformのtagetでフレーム名を指定します。)
メインウインドウ全体を更新せずに変更を反映させるというのであれば、その手段がわからないと私には回答できません。
ご返信遅くなりましたm(__)m
おっしゃる通り、私が支離滅裂な事を言っておりますね(-_-;)ページの更新もせずにPOSTのデータを反映させるなど出来る訳がありませんね。今一度教えて頂きました情報で作ってみます。
ありがとうございましたーm(__)m
No.3
- 回答日時:
#2です。
勘違いしていたようです。ちょっとわからない部分があるので確認させてください。
以下のような流れでしょうか?
メインウインドウでリンクをクリック
→サブウインドウをwindow.open
サブウインドウの入力フォームへデータを入力。
サブウインドウの送信ボタンクリック
→メインウインドウのフォーム(?)にサブウインドウで入力したデータを複写。
→CGI(php)にデータを送信(POST)
サブウインドウ上にはCGI(php)の処理結果を表示。
この回答への補足
ありがとうございます。
>メインウインドウでリンクをクリック
>→サブウインドウをwindow.open
>サブウインドウの入力フォームへデータを入力。
>サブウインドウの送信ボタンクリック
この時点で、メインウィンドウのPHPにサブウィンドウで入力したデータをPOSTで送信し、反映させている状態を作りたいと思っております。
サブウィンドウからデータを送った時点でメインのPHP上のプログラムで何かしらのアクションをおこし、その結果をメインウィンドウで表示するといった流れです。
何卒、ご教授の程、宜しくお願い致します。
No.1
- 回答日時:
サブウィンドウ側のボタン押下でいきなり送信するのでなく、
いったんJavascriptのfunctionを呼んでやって、
その中で、メインウィンドウ(opener)にデータを渡す処理を行い、
その後、POSTでsubmitするというのではどうでしょうか?
この回答への補足
ありがとうございます。
すみません。読んでも具体的なイメージができないです(T_T)サブウィンドウ側でfunctionでopenerの設定をしてみたんですが、読んでる本のやり方だと、URLしか送れないみたいで、肝心のデータが全部飛んじゃうんです。。。笑われるかもしれませんが、やってみたソースを明記させて頂きます。メインページからは、window.openでサブウィンドウを開いています。
サブウィンドウのJavaScript
<script language="javascript">
<!--
function back_window(WO)
{
if(opener.closed)
{
NewWin=window.open("","MWindow");
window.opener.document.test.submit();
}
else
{
opener.location.href=WO
}
}
//-->
</script>
送信ボタンの設定
<input type="button" value="送信" onClick="javascript:back_window('test.php')">
・・・と、この様に書いているんですが、ボタンを押すと、メインページが反応するんですが、データが送られないのです(T_T)
どうすればよいのやら・・・何かヒント頂けると非常に助かります!お願いしますm(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Vba LongPtrについて教えてください 2 2022/08/19 11:14
- Windows 10 プレビューウインドウに表示されたメッセージについて 1 2022/04/13 13:53
- Windows 10 2つのウィンドウ選択時の表示について 10 2023/07/25 08:48
- その他(ソフトウェア) IndesignのGPUは色?CMYKなの?RGBなの? 1 2022/05/09 19:13
- HTML・CSS GETをPOSTに変更したところ 送信 不能です。 1 2022/04/10 17:31
- レトロゲーム 回答が来なくて困っています!!!誰か助けて下さい!!! https://ux.getuploader 1 2022/11/20 13:54
- Yahoo!メール ぷららメールの送受信が出来なくなった 2 2023/07/16 11:48
- Word(ワード) Microsoft Word2023で、修正箇所を表示させたい 1 2023/02/09 10:07
- Chrome(クローム) googleアカウントのアイコンをローマ字または漢字で表示させたい 2 2023/05/06 22:25
- UNIX・Linux ubuntu ウィンドウのバー ダブルクリック 巻き取る 1 2022/04/28 19:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのシート上に別のシー...
-
Javascript_submit()完了後に処...
-
VBAで任意のウインドウのサイズ...
-
VBの画面で、全ウィンドウを一...
-
ウィンドウの2重起動を防止したい
-
子ウィンドウから親ウィンドウ...
-
デスクトップ画面を4分割するには
-
GetAncestorのGA_ROOTとGA_ROOT...
-
親ウィンドウから開いた子ウィ...
-
子ウィンドウの存在確認
-
孫ウインドウを閉じたら親をリ...
-
親ウィンドウと子ウィンドウの...
-
window.close()で確認メッセー...
-
テーブルの<trでウィンドウAを...
-
ウィンドウサイズを開いたとき...
-
秀丸エディタでHTMLタグテキス...
-
助けてGmailでボタン表示が消え...
-
ウィンドウ名からウィンドウオ...
-
Access2007では、フォームのウ...
-
JavaScriptでPDFを新規ウィンド...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのシート上に別のシー...
-
Javascript_submit()完了後に処...
-
VBAで任意のウインドウのサイズ...
-
ウィンドウの2重起動を防止したい
-
window.Openをモーダルにできま...
-
<EXCEL/VBA> OUTLOOKのウインド...
-
ウィンドウ名からウィンドウオ...
-
VBの画面で、全ウィンドウを一...
-
子ウィンドウの存在確認
-
初心者javascript グーグルクロ...
-
インタネットからPDFファイルだ...
-
親ウィンドウから開いた子ウィ...
-
子ウィンドウより親ウィンドウ...
-
1クリックでモーダルを開いてか...
-
子ウィンドウを常に手前表示、...
-
ポップアップと作業ウィンドウ...
-
IEでのみ発生するJavaScriptエラー
-
ブラウザ(IE)からエクスプロー...
-
JavaScriptで指定Windowを最大...
-
リンク時、親ウインドウを最前...
おすすめ情報