はじめまして。
現在、ショッピングカートのCGIを利用するためにHTMLを調整しています。
【単一商品の場合】
<FORM action="cgi-bin/cart/cart.cgi" method="POST"><INPUT type="hidden" name="shouhinnumber" value="0001"><INPUT type="hidden" name="shouhinmei" value="高級シャンプー"><INPUT type="hidden" name="kakaku" value="3000">
あとはセレクトフォームで数を選択して送信すれば正常に料金計算されるのですが、これが、内容量によって料金が異なる場合、どのようにHTMLを組めばよろしいのでしょうか。
ラジオボタンでそれぞれの行にINPUTを入れたが、先頭のINPUTしか認識せず、フォーム文を複数作るとマージンが空き、複数選択が可能になってしまう。
なお、CGIをいじるのは危険なので、HTML内でどうにかしたい・・・。
つまり・・・
高級シャンプーの
260mlが1800円
500mlが3000円
というように単一商品名で代金が異なるものを1つのフォーム内でCGIへ送信できないでしょうか。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
JavaScriptを使えば可能です。
(例)
<HTML>
<HEAD>
:
<META HTTP-EQUIV="Content-Script-Type" CONTENT="text/javascript">
<script type="text/javascript">
<!--
// shouhinnumberとkakakuに値をセットする処理
function setvalue(shouhinnumber, kakaku) {
frm = document.getElementById("form1");
frm.shouhinnumber.value = shouhinnumber;
frm.kakaku.value = kakaku;
}
// ラジオボタンが選択されているかをチェックする処理
function checkform() {
frm = document.getElementById("form1");
for (i=0; i<frm.bikou1.length; i++) {
if (frm.bikou1[i].checked) {
// alert(frm.bikou1[i].value+"\n"+frm.shouhinnumber.value+"\n"+frm.kakaku.value);
// 選択されていたので送信
frm.submit();
return;
}
}
// 選択されていなかったのでエラー
alert("商品を選択してください");
}
//-->
</script>
:
</HEAD>
<BODY>
:
<FORM id="form1" action="~" method="~">
<INPUT type="hidden" name="shouhinnumber" value="">
<INPUT type="hidden" name="kakaku" value="">
<INPUT id="m260" type="radio" name="bikou1" value="M (260ml)" onClick="setvalue('FH26M', 1800);"><LABEL for="m260">乾燥肌の方:M (260ml)</LABEL> <BR>
<INPUT id="m500" type="radio" name="bikou1" value="M (500ml)" onClick="setvalue('FH50M', 3400);"><LABEL for="m500">乾燥肌の方:M (500ml)</LABEL><BR>
<INPUT id="n260" type="radio" name="bikou1" value="N (260ml)" onClick="setvalue('FH26N', 1600);"><LABEL for="n260">脂性肌の方:N (260ml)</LABEL><BR>
<INPUT id="n500" type="radio" name="bikou1" value="N (500ml)" onClick="setvalue('FH50N', 3000);"><LABEL for="n500">脂性肌の方:N (500ml)</LABEL><BR>
<INPUT type="button" value="送信" onClick="checkform();">
</FORM>
:
</BODY>
</HTML>
No.1
- 回答日時:
ラジオボタンでやるのなら
<input type="radio" name="kakaku" value="1800">260ml<br>
<input type="radio" name="kakaku" value="3000">500ml<br>
プルダウンメニューなら
<select name="kakaku">
<option value="1800">260ml
<option value="3000">500ml
</select>
とすれば良いと思います。
この回答への補足
お返事いただき、ありがとうございます。
これが失敗している状態です。
<LABEL><INPUT type="radio" name="bikou1" value="M (260ml)"><INPUT type="hidden" name="shouhinnumber" value="FH26M"><INPUT type="hidden" name="kakaku" value="1800">乾燥肌の方:M (260ml)<BR></LABEL>
<LABEL><INPUT type="hidden" name="shouhinnumber" value="FH50M"><INPUT type="hidden" name="kakaku" value="3400"><INPUT type="radio" name="bikou1" value="M (500ml)">乾燥肌の方:M (500ml)<BR></LABEL>
<LABEL><INPUT type="hidden" name="shouhinnumber" value="FH26N"><INPUT type="hidden" name="kakaku" value="1600"><INPUT type="radio" name="bikou1" value="N (260ml)">脂性肌の方:N (260ml)<BR></LABEL>
<LABEL><INPUT type="hidden" name="shouhinnumber" value="FH50N"><INPUT type="hidden" name="kakaku" value="3000"><INPUT type="radio" name="bikou1" value="N (500ml)">脂性肌の方:N (500ml)</LABEL>
やはり、上記のように、商品番号・備考(タイプ)・価の3つを送るのは不可能・・・??
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS ただいま勉強始めたての初心者です。フォームを縦並べにしたいです。 2 2022/11/20 17:18
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ラジオボタンが両方とも選択で...
-
INPUT TYPE
-
プルダウンメニューでValue値を...
-
<select>タグの幅設定
-
チェックボックスとセレクトボ...
-
メールフォームのプルダウンメ...
-
FORMのselectの選択肢を最初か...
-
「value」に2つの値をセットす...
-
ラジオボタンを選択済みにする...
-
select値をhiddenのvalueに渡し...
-
wordの数式について 定積分を書...
-
htmlからパラメータで、cgiに渡...
-
VB初心者。小数点以下の表示で...
-
別formのhidden項目を自form値...
-
perlにおけるセッションIDについて
-
チェックボックスの返す値
-
プログラミングについての質問...
-
JEditorPaneでwebページを表示
-
VB.net データーグリッドビュー...
-
テキストBOXの縦幅を変えたい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ラジオボタンが両方とも選択で...
-
select値をhiddenのvalueに渡し...
-
「value」に2つの値をセットす...
-
INPUT TYPE
-
FORMのselectの選択肢を最初か...
-
チェックボックスとセレクトボ...
-
チェックボックスグループの一...
-
ラジオボタンを選択済みにする...
-
<select>タグの幅設定
-
OPTIONタグにループは使えない...
-
iframeごとに戻るボタンを
-
メールフォームのプルダウンメ...
-
リストボックス(multipleなsel...
-
selectboxの画面遷移で、postデ...
-
プルダウンメニューでValue値を...
-
htmlでセルの値を取得して計算...
-
チェックボックスの余白を指定...
-
一つの検索窓で複数のサイトか...
-
ラジオボタンとセレクトメニュ...
-
コンボ1の内容に応じてコンボ...
おすすめ情報