0

配送方法を選択して合計値を計算したいのですが、その値は注文の小計と合計されます。

しかし、配送方法の1つを選択してから別の配送方法を選択すると、新しいものと以前のものが選択された合計値になります。例えば。最初の合計: 200 で、[DHL 標準配送: $10.50] をクリック -> 合計 = 210.50。その後、「DHL Express delivery : $42.50」をクリック → 合計 = 252.50 ですが、242.50 のはずです

どうすればこれを解決できますか?

これが私のjQueryコードです

 $("input:radio[name=shipping]").click(function(){
                var total = 0;
                $("input:radio[name=shipping]:checked").each(function() {
                    total += parseFloat($(this).val());
                });
                var current = parseFloat($('#total').val());
                $("#shipping").html(total);
                total += current;
                $("input:text[name=total1]").val(total);

            });

HTML コード

<tr valign="top">
    <td>Select Shipping method</td>
<td>
    <input id="shipping_method" type="radio" name="shipping" value="10.50"> DHL standard delivery : $10.50<br>

    <input id="shipping_method" type="radio" name="shipping" value="42.50"> DHL express delivery : $42.50<br>
    <input id="shipping_method" type="radio" name="shipping" value="0.00"> pick up : $0.00<br><br>
</td>
 </tr>

 <tr>
 <td>Order Subtotal<td><label id="subtotal" value="">$200.00</label>
 </tr>
 <tr><td>&nbsp;</tr>
 <tr>
    <td>Shipping<td>$<span id="shipping">0.00</span>
 </tr>
 <tr><td>&nbsp;</tr>
 <tr>               
 <td>Total<td>  $<input type="text" id="total" name="total1" value="252.50" style="border:0px;">
 </tr>
4

2 に答える 2

0

この通知を試してください。変数の合計を追加から変更しました。

 <script>
 $(document).ready(function() { 
                $("input:radio[name=shipping]").click(function(){
                    var total = 0;
                    $("input:radio[name=shipping]:checked").each(function() {
                        total = parseFloat($(this).val());
                    });
                    var current = parseFloat($('#total').val());
                    $("#shipping").html(total);
                   total =  total + parseInt($('#subtotal').text().replace('$',''));
                    $("input:text[name=total1]").val(total);

                });
            }); 
</script>
于 2012-10-06T07:22:36.843 に答える
0

合計ではなく、小計に配送を追加したいですか? 私の辞書では、合計を「いくつかの部分の完全な合計」と定義しています。これは、これ以上何も追加してはならないことを意味します。あなたが必要

var current = parseFloat($('#subtotal').text());

そのhtmlから$記号を削除します

于 2012-10-06T07:24:26.203 に答える