子ウインドウのカート送信時に親ウインドウに結果表示したい

このQ&Aのポイント
  • 親ウインドウからカートを表示したままで、子ウインドウにカートを送信した結果を表示する方法について知りたいです。
  • 通常のカートでは送信ボタンを押すと別ウインドウにカート内容が表示されてしまいます。それを回避する方法を教えてください。
  • 子ウインドウからカートを送信した後、親ウインドウにカートを表示する方法を教えてください。
回答を見る
  • ベストアンサー

子ウインドウのカート送信時に親ウインドウに結果表示したい

親ウインドウからカート表示する子ウインドウ開き、 カートの送信ボタンを押した後、子ウインドウには カートを表示したままで、親ウインドウにカートを 表示したいのです。通常のカートだと送信ボタンを押すと そのウインドウにカート内容が表示されてしまいます。 子ウインドウ <form action="http://www.****.cgi" method="post"> <input type="hidden" name="_shop_id" value="****"> <select name="_item"> <option value="商品A\200">商品A \200 </select> <input type="hidden" name="_zaiko" value=""><select name="_num"> <option value="1">1 <option value="2">2 <option value="3">3 </select> <BR> <input type="hidden" name="_memo1"><input type="hidden" name="_memo2"> <input type="hidden" name="_memo3"> <input type=hidden name="ORDSTEP" value="step1"> <input type="submit" value="買い物カゴへ"></form> 親ウインドウ <script language="JavaScript"> <!-- var openWin ; //--> </script> </HEAD> <BODY> <DIV style="width : 42px;height : 16px;top : 55px;left : 157px; position : absolute; z-index : 1; " id="Layer1"><input type ="button" value ="OPEN" onclick ="openWin = window.open('testcart1.htm', '', 'width=400,height=400');" 以上よろしくお願いします。

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

  • ベストアンサー
  • godakaz
  • ベストアンサー率72% (16/22)
回答No.2

ソース全文を書き下ろしても良いのですが、でも、はっきり申し上げれば、このレベルのソースが理解できず、書き換えの仕方も判らないような状態で、e-Commerceサイトを構築しようとすること自体が無謀です。 Web製作の練習・勉強として、実際には使わないけれど学びたい、という程度であれば良いのですが、もし、ビジネスとしてWebページを使うことをお考えでしたら、もっと勉強されてから考えるか、または、きちんとしたWeb製作会社に委託するべきだと思いますよ。 一応、以下にソースの例を挙げておきます。 【子ウィンドウ】 <html> <head> <script language="javascript"> <!-- function c2p(obj){ var cvalue="" + obj.options[obj.selectedIndex].value; var pname="" + obj.name; window.opener.document.pfrm.elements[pname].value=cvalue; } //--> </script> </head> <body> <form> <select name="_item" id="_item" onChange="c2p(this);"> <option value="商品A\200">商品A \200 <option value="商品B\400">商品B \400 </select> <select name="_num" id="_num" onChange="c2p(this);"> <option value="1">1 <option value="2">2 <option value="3">3 </select> <br> <input type="button" onClick="window.opener.document.pfrm.submit();" value="ORDER"> </body> </html> 【親ウィンドウ】 <html> </head> <script language="JavaScript"> <!-- function opWin(){ subwin=window.open('testcart1.htm','','width=400,height=400'); } //--> </script> </head> <body> <div style="position:absolute; top:55px; left:157px; z-index:1;" id="Layer1"> <form> <input type ="button" value ="OPEN" onclick ="opWin();"> </form> </div> <form name="pfrm" id="pfrm" action="http://www.****.cgi" method="post" style="display:none;" onSubmit="window.subwin.document.cfrm.reset();"> <!-- <form name="pfrm" id="pfrm" onSubmit="window.subwin.document.cfrm.reset();"> //--> <input type="hidden" name="_shop_id" id="_shop_id" value="****"> <input type="hidden" name="_zaiko" id="_zaiko" value=""> <input type="text" name="_item" id="_item" value=""> <input type="text" name="_num" id="_num" value=""> <input type="hidden" name="_memo1" id="_memo1" value=""> <input type="hidden" name="_memo2" id="_memo2" value=""> <input type="hidden" name="_memo3" id="_memo3" value=""> <input type="hidden" name="ORDSTEP" id="ORDSTEP" value="step1"> </form> </body> </html>

その他の回答 (1)

  • godakaz
  • ベストアンサー率72% (16/22)
回答No.1

親ウィンドウ側に隠しフォーム(visibility:hidden)を設けておいて、 そちらの名前およびアクションを <form name="pf" id="pf" action="hogehoge.cgi" method="post">とし、 子ウィンドウのフォームに入力されるたびに、入力内容をこちらの隠しフォームにコピーしておきます。 そして、子ウィンドウのサブミットボタンを通常のボタンに換えて、以下のように ボタンが押されたら親ウィンドウのフォームをサブミットするように指示します。 <input type="button" onClick="window.opener.document.pf.submit();" value="買い物カゴへ"> こうすると、CGIの呼び出し元=親ウィンドウになりますので、お問合せの問題は解決できるかと思います。

yoshizo
質問者

お礼

記入場所を間違えました・・・。 ご回答ありがとうございます。 私、最近勉強を始めたところでして、 ご回答頂いた内容をページにどう反映したら良いか 分かりません。 大変申し訳ありませんが、どのように変更するのか、 大変お手数ですが、変更した内容(全文)をお書き頂け ないでしょうか。よろしくお願いいたします。

yoshizo
質問者

補足

ご回答ありがとうございます。 私、最近勉強を始めたところでして、 ご回答頂いた内容をページにどう反映したら良いか 分かりません。 大変申し訳ありませんが、どのように変更するのか、 大変お手数ですが、変更した内容(全文)をお書き頂け ないでしょうか。よろしくお願いいたします。

関連するQ&A

  • IEで子ウインドウから親ウインドウへのタグの追加

    IEで子ウインドウから親ウインドウへのタグの追加 【やりたいこと】 1.親ウインドウからポップアップで子ウインドウを出して、その子ウインドウ内でチェックしたものを親ウインドウの<select>タグに<option>タグとして付け加えること。 2.同じくhiddenタグでチェックしたもののvalueを持たせたいということ。 とあるサイトを参考に、firefoxではこの挙動ができました。 ただ、IEだと親ウインドウに何も反映されなくて困っています。 以下ソース(一部)です。 --親html-- <head> <script type="text/javascript"> <!-- var w = window; function openWin(url) { if ((w == window) || w.closed) { w = open(url, "_blank", "width=800,height=600,scrollbars=yes"); } else { w.focus(); } return(false); } // --> </script> </head> <body> <select id="selectArea" size="5" name="search_area" class="list_box"> (ここに1.) </select> <div id="search_area"> (ここに2.) </div> <input type="button" onClick="return openWin('checkbox.php')" value="チェックをつける"> </body> --子html-- <input type="checkbox" name="department" value="c1" onclick="BoxCheckChild(this)"> <input type="checkbox" value="t1" onclick="BoxCheckChild(this)"> <input type="checkbox" value="s1" onclick="BoxCheckChild(this)"> 子htmlでは、onclickでチェックしたチェックボックスに対して処理をしています。 --javascript-- function appendOptionLast(str, value){//親ウインドウに<option>として追加(1.) var elOptNew = window.opener.document.createElement('option'); elOptNew.text = str; elOptNew.value = value; var elSel = window.opener.document.getElementById('selectArea'); var nstr = "<option value=aaa>test</option>" try { elSel.add(elOptNew, null); } catch(ex) { elSel.add(elOptNew) } function make_hidden(value){//hiddenタグ作成、追加(2.) var q = document.createElement('input'); q.type = 'hidden'; value = value.slice(1); if(type == "c"){ q.name = 'department[]'; }else if(type == "t"){ q.name = 'theme[]'; }else if(type == "s"){ q.name = 'index[]'; } q.value = value; window.opener.document.getElementById("search_area").appendChild(q); } となっています。 ソース、説明ともにわかり辛いかもしれませんが、どなたかわかる方いたら助けてもらえるとありがたいです。

  • ラジオボタンでうまくするには・・・・

    初めまして。 現在下記のプルダウン形式で、一つの価格が同じなので問題なく動くのですが <FORM action="cart/sys/cart.cgi" method="post"> <INPUT type=hidden value=005 name=num> <INPUT type=hidden value=●●● name=name> <INPUT type=hidden value=2000 name=tan> <SELECT name=sur> <OPTION value="" selected>購入数量</OPTION> <OPTION value=1>1</OPTION> <OPTION value=2>2</OPTION> <OPTION value=3>3</OPTION> <OPTION value=4>4</OPTION> <OPTION value=5>5</SELECT> <INPUT type=submit value=カートに入れる> </FORM><BR> <FORM action="・・・/cart.cgi" method="post"> <INPUT type=hidden value=005 name=num> <INPUT type=hidden value=●●● name=name> <INPUT type=hidden value=2000 name=tan> </FORM> 同じ商品で1・2・3・4・5のそれぞれに単価が変わる設定をしたいのですが、うまくいく方法が見つからないです。 ラジオボタン形式で作ってみたものの・・・・ <FORM action="・・・/cart.cgi" method="post"> <INPUT type=hidden value=005 name=num> <INPUT type=hidden value=●●● name=name> <INPUT type=submit value=カートに入れる> </FORM> <FORM> <INPUT type="radio" name="name1" value="2000">1袋<BR> <INPUT type="radio" name="name1" value="3900">2袋<BR> <INPUT type="radio" name="name1" value="5800">3袋<BR> <INPUT type="radio" name="name1" value="7500">4袋<BR> <INPUT type="radio" name="name1" value="8500">5袋</FORM> としてみましたがうまくいきません。 なにか方法ございましたら、ご教授いただければと思います。

    • ベストアンサー
    • HTML
  • ショッピングカートの送信ボタンを画像にするには!?

    ショッピングカート自体はちゃんと機能しているのですが、送信ボタンを画像にするのにはどうすればよいのでしょうか。よろしくお願いします。 ちなみに今の設定はこんな感じになってます。 <form method=post action="cart.asp"> <input type=hidden name="action" value="regist"> 商品A <input type=hidden name="goods" value="商品A"> 単価 1,000円 <input type=hidden name="unit" value="1000"> 購入数 <input type=text name="amount" value="0" size=3>個<br> 備考 <input type=text name="rem" value="" size=20> <input type=submit value="カゴへ"> </form> これをxxx.jpgという画像のボタンにしたいのですが…

  • プルダウンメニューで選択しないとカートに入らないようにしたいのですが

    初めまして、宜しくお願い致します。 現在ウェブショップを運営しているのですが、 Aという箱の商品に必ずオプションとして(1)~(3)の商品を二つ選択してもらったうえで「カートに入れるボタン」を押してほしいのですが(Aだけの販売はしていません)、現状では(1)~(3)を何も選択しなくてもAという商品だけをカートに入れられる状態です。 下記ソースの「--選択して下さい--」を選択している状態ではカートに入らない様にするにはどうすれば良いのでしょうか? どなたかご存知な方がいらっしゃいましたらご教授頂けると幸いです。 宜しくお願い致します。 <form name="escart1" action="http://サーバーアドレス" method="post"> 商品の種類: <select name="opt1"> <option value="--選択して下さい--">--選択して下さい--</option> <option value="(1)@@500">(1)500円</option> <option value="(2)@@600">(2)600円</option> <option value="(3)@@700">(3)700円</option> </select> <select name="opt2"> <option value="--選択して下さい--">--選択して下さい--</option> <option value="(1)@@500">(1)500円</option> <option value="(2)@@600">(2)600円</option> <option value="(3)@@700">(3)700円</option> </select> <br>数量: <select name="num"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <input type="image" src="../common/img/btn_cart2.gif" value="submit" alt="カートに入れる" width="164" height="30" /> <input type="hidden" name="sid" value="サーバーID"> <input type="hidden" name="pid" value="商品コード"> </form>

  • フォーム内だけで"EUC-JP"を使う具体的なソースを教えてください

    フリーのショッピングカートを使って ー-------------------------- <form method="post" action="http://xxx.com/web_cart/cart.php" accept-charset="EUC-JP"> <div align="center"><img src="http://xxx.com/web_cart/img.php?path=./item_img/1_0.jpg&scale=150" width="188" height="188" border="0" /><br /> カラー: <select name="i_opa_value"> <option value="白">白</option> <option value="青">青</option> </select><br /> 数量: <select name="i_cnt"> <option value="1">1</option> <option value="2">2</option> </select> <br /> <input type="submit" value="カートに入れる"> <input type="hidden" name="cart_md" value="in"> <input type="hidden" name="i_num" value="1"> </div> </form> ー-------------------------- というソースの白、青という文字を"EUC-JP"で 送らなければならないですが、上記の内容だとIEで うまく動きません。 http://search.web-sun.com/zatu/charset.html も教えていただいたのですが、試行錯誤もむなしく、 実現できない状態です。 図々しいのですが、具体的なソースを教えていただけると 大変助かります。

    • ベストアンサー
    • CGI
  • ランダムリンクでリンク先を別ウィンドウに表示したい

    <form action="http://mkt.fem.jp/randomlink.cgi" method="get"> <input type="hidden" name="mode" value="link"> <input type="hidden" name="x" value="http://www.yahoo.co.jp/"> <input type="hidden" name="x" value="http://www.odn.ne.jp/"> <input type="hidden" name="x" value="http://www.bbiq.jp/"> <input type="hidden" name="x" value="http://www.ntt-west.co.jp/"> <input type="hidden" name="x" value="http://www.nttdocomo.co.jp/"> <input type="submit" value="タイトル~ランダムリンクだよ"></form> わかりやすい様にリンク先URLに差し支えのないものを入れました。 <input type="hidden" name="x" value="リンク先URL"> これを追加するだけでランダムリンク先は増えていきます。 質問ですが、これを表示させればリンク先は別ウィンドウにはなりません。今回は、リンク先を別ウィンドウに表示したいのです。 HTMLのどこを変えればいいのか、貼っていただけないでしょうか?

  • 子ウインドウから親ウインドウのselectボックスを変更したい

    行いたいことは郵便番号による住所検索です。 PerlとMysqlをつかって郵便データは取得します。 親ウインドウのテキストボックスに郵便番号を入れて、子ウインドウで都道府県と以下住所を表示させます。 入力ボタンというものを押すと、親ウインドウの都道府県selectボックスと住所テキストボックスに入力させたいというロジックです。 ////////親フォーム////////////// <SCRIPT language="JavaScript"> function OpenZipWin1(){ var Myzip =document.fm.zip1.value; window.open("hoge.cgi?mode=zip_search&zipcode=" + Myzip,"new","width=500,height=270"); } </SCRIPT> <form action="hoge.cgi" method=post name="fm"> <input type=text name=zip1 size=10 maxlength=8 value=""><a href="javascript:void(0);" onClick="OpenZipWin1();">検索</a><br> <select name="pref"> <option value="">都道府県選択</option> <option value="1">北海道</option> <option value="2">青森県</option> <option value="3">岩手県</option> <option value="4">宮城県</option> <option value="5">秋田県</option> <option value="6">山形県</option> ・・・・ <option value="47">沖縄県</option> </select> <input type=text name=add value="" size=60> </form> ////////子フォーム////////////// <SCRIPT language="JavaScript"> function setForm() { var Mypref = document.subForm.pref.value; window.opener.document.?????????? = Mypref; var Mycity = document.subForm.city.value; window.opener.document.fm.add.value = Mycity; } //--> </SCRIPT> <p>検索結果</p> <form name="subForm"> <table border="0" cellpadding="5"> <tr> <td nowrap>郵便番号</td> <td>110-0001</td> </tr> <tr> <td>住所</td> <td> <input type="text" name="pref" size="20" value="東京都"> <input type="text" name="city" size="60" value="台東区 谷中"></td> </tr> </table></form> <p align=center><input type="submit" value="入力" onclick="javascript:setForm();self.close()"></p> <p align=center><a href="#" onclick="javascript:window.close()">閉じる</a></p> 問題なのは子ウインドウは都道府県が日本語で、親ウインドウはselectのvalueは数値、要素の方が日本語なのです。 子ウインドウの値を親ウインドウの要素の方と合わせたいのです。 上記の子ウインドウのJavaScriptで window.opener.document.?????????? = Mypref; の部分でうまくすればいいのかな・・・とは考えてみたもののうまくいきません。 恐れ入りますがご教授おねがいできませんでしょうか。 よろしくお願いいたします。

  • スタイルシートについて

    HPでショッピングカートを設置してます。 レンタル会社に教えてもらったのですが、うまくいきません。 解る方がいましたら教えてください。 1行テキスト領域に文字を入れてカゴ入れるとカゴの中の「品名」部分に文字が繁栄されるようにしてます。 文字は入るのですが、文字数が多いと品名部分の幅が長くなってしまいます。 HTMLタグ<form>~</form>内に下記のタグを追加するという事でした 例)「■文字」と入力フィールドを追加する(品番 name) <FORM name="itemForm" action="​http://ysksbt.net/cart.jsp"​ method="post" target="cartwin"> <input type="hidden" name="command" value="add"> <input type="hidden" name="U_name" value=""> <input type="hidden" name="listURL" value="close"> ■ 種類 <select name="S_name"> <option value="s1">4cm </option> <option value="s2">2cm </option> </select> ■ 個数 <select name="C_name"> <option>1</option> <option>2</option> <option>3</option> </select>個 ■文字 <input type="text" name="1_name"> <INPUT type="image" src="​http://ysksbt.com/new_icon/b_cart.gif">​ </FORM> 「■文字」の1行テキストに文字を入れてカゴの中に入れるボタンを押すと品名の部分に文字が繁栄されるのですが、文字の数だけ品名の横幅が長くなり、ある程度の文字数になったら改行されるように .itemnamecell {width:100px;white-space:normal !important;} こちらのタグをスタイルシートへ入れてカゴの中を見たら、 「■種類」には繁栄されるのですが、「■文字」には100pxが繁栄されません。 スタイルシート初心者なのでカート会社の支持通り指定しても思うようにいかず、どこが違うのかもよく分かりません。 解る方がいましたらよろしくお願いします。

  • ショッピングカートの精算

    今、簡単なショッピングカートを作成しているのですが、品物の個数を プルダウンメニューで選択して、確認ボタンを押した時に品物の個数と その金額を精算するというスクリプトで悩んでいます。データベースなどは使わずにPHPだけで今進めています。 なにか例などを上げていただけますでしょうか? スクリプトは下記のような感じで作っています。 <form method = "post" action = "syoppingkakunin.php"> <select name = "ringo"> <option value = "1">1</option> <option value = "2">2</option> <option value = "3">3</option> <option value = "4">4</option> <option value = "5">5</option> </select> <input type = "submit" name = "submit" value = "確認"> <input type = "hidden" name = "Fruit" value = "ringo"> <input type = "hidden"name = "ringo" value = "100"> </form>

    • ベストアンサー
    • PHP
  • 検索結果を新しいページで表示するには?

    こんにちは、mappaと申します。 現在、ホームページを作成しておりまして、googleの検索機能をサイト内に組み込んで、自分のサイト内の検索とwwwの検索をラジオボタンを使って、両方を検索できるようにしたいと思ってます。 そこで、wwwの検索結果を新しいページで表示させるにはどのようにすればよろしいでしょうか? また、現在のソースが間違っていたら教えていただければと思います。 ソース <A HREF="http://www.google.com/"> <IMG SRC="http://www.google.com/logos/Logo_25wht.gif" width="75" height="32" ALT="Google" BORDER="0"></A> <input type="radio" name=sitesearch value="***.com" checked>***内検索 <input type="radio" name=sitesearch value="">WWW検索 <input type=hidden name=hl value="ja"> <input type=hidden name=lr value=""> <input type=hidden name=safe value="off"> <INPUT TYPE="text" name=q size="20" maxlength="255" value=""> <INPUT type=submit name=btnG VALUE="Google 検索"> ※***というのはサイトの仮の名前です。 宜しくお願いいたします。

専門家に質問してみよう