我有一个计算价格,数量和运费的脚本。当数字加在一起时,它应显示如下:
小计:[金额]
运送:[金额]
总计:[小计+运费]
总结是正确的,但是运费显示总金额,而不是运费金额。
以下是我用来计算总数的脚本:
function calculate() {
var total = 0;
var shiptotal = 0;
var subtotal = 0;
$('.button-click').each(function () {
var amt = parseInt($(this).prev().val());
var qty = parseInt($(this).parent().find(".quantity").val());
var ship = parseInt($(this).parent().find(".ik-ship").val());
total += ((ship += amt) * qty);
shiptotal += (ship * qty);
subtotal += (amt * qty);
});
$('#Amount').val(total.toFixed(2));
$('.total-amount').html( total.toFixed(2) );
$('.sub-total-amount').html( subtotal.toFixed(2) );
$('.shipping-amount').html( shiptotal.toFixed(2) );
}
HTML:
<li>
<label for="CAT_Custom_410680" class="bold">Spin Pen - $62.00 <br> <a class="fancybox" href="#spin-pen">Learn More</a></label>
<input type="text" class="cat_textbox quantity " id="CAT_Custom_410680" name="CAT_Custom_410680" maxlength="4000" value="0" />
<input type="hidden" class="ik-ship" value="1.00">
<input type="hidden" class="ik-price" value="62.00">
<ul class="button-group radius button-click">
<li><a href="#" class="small button secondary"><i class="fa fa-plus"><span class="hide">+</span></i></a></li>
<li><a href="#" class="small button secondary"><i class="fa fa-minus"><span class="hide">-</span></i></a></li>
</ul>
</li>
您会注意到运费是预设成本。
我做错了什么以及如何解决?
答案 0 :(得分:3)
这看起来不对:
total += ((ship += amt) * qty);
你的意思是:
total += ((ship + amt) * qty);
+
而不是内部表达式中的+=
。