CGI-BBS > SO−HO > ショッピングバスケット > Javascriptで表示した数字をカートシステムに取り込みたい。


カレッヂ
カレッヂ


質問者 Satomi  投稿日 2003/12/16(火) 19:50:18
商品の注文数量によって、単価が変動するようにしたいのですが、
過去に似たような質問がないかどうか過去ログを探してみたところ
サイズによって単価を変えたいというログがあり、その回答を参考
にJavascriptで数量を選択するとテキストボックスに単価が表示さ
れるように設定してみました。

-----ここから-----
<form name="form1" action="javascript:void(0);"> <script type="text/javascript" language="JavaScript"><!--
function calcPrice (i) {
var pricelist = new Array(5);
pricelist[0] = "";
pricelist[1] = 1000;
pricelist[2] = 900;
pricelist[3] = 800;
pricelist[4] = 700;
document.form1.price.value = pricelist[i];
}
//-->
</script><select name="size" onchange="calcPrice(this.selectedIndex);"><option selected>ご注文数量</option><option value="1000"> 1- 
5個</option><option value="900"> 6-10個</option><option value="800">11-15個</option><option value="700">16-20個</option></select> 
<input type="text" name="price" size="10"> 円</form>
-----ここまで-----

そこまでは何とかなったのですが、そこで表示された単価をCGIの
カートシステムに読み込むことはできるのでしょうか?
一つの商品につき、例えば単価が1,000円と決まっているのなら、

value="1000"

とあらかじめ設定しておけるのでしょうが、注文数量により単価を
変えたい場合で、上記のようなJavascriptを取り入れた場合、
value値はどのように設定したら良いのでしょうか?

プロバイダ参照:
サーバのOS:WINサーバ
パソコンのOS:WinNT系
エディタ:
FTPソフト:FFFTP
サーバ移転:していない
改造:していない
CGI習熟度:middle

回答者 papa  [削除]  投稿日 2004/1/10(土) 14:44:52
上記の設定では、金額と同時に実際に購入される数量もショッピングバスケットに
取り込む必要があり、難しくなるのではないでしょうか。
簡単に、以下のようなフォームでは如何でしょう。

<form method=post action="cargo.cgi">

<!-- 購入命令 name=action value=regist -->
<input type=hidden name="action" value="regist">

<!-- 商品名入力 name=goods value=商品名 -->
ご注文数量
<input type=hidden name="goods" value="商品名">

<!-- 単価指定 name=unit value=単価 -->
<select name="unit" size=1>
<option value="1000">1-5個 1,000円
<option value="900">6-10個 900円
<option value="800">11-15個 800円
<option value="700">16-20個 700円
</select>

<!-- 購入数入力 name=amount value=数量 -->
購入数
<input type=text name="amount" value="0" size="3">個<br>

<input type=submit value="カゴへ">
</form>

質問者 Satomi  [削除]  投稿日 2004/1/14(水) 15:35:49
papaさん、どうもありがとうございます!
早速、試してみます。

返信(回答)する

 


Web裏技