从 jquery 购物车中获取余额

我输入amount作为输入:


<input style="width:200px" type="number" value="amount" class="form-control pull-right prc" placeholder="Enter amount">

我script的是:


   $('.form-group').on('input', '.prc', function(){

    var totalSum = 0;

    var currbalance = 0;

    $('.form-group .prc').each(function(){

        var quantity = $(this).val();

        var price=$(this).attr('price');

        var item_amount= parseFloat(price*quantity);

        if ($.isNumeric(quantity)){

            totalSum += parseFloat(item_amount);

        }

        var amount=$(this).attr('amount');

        if ($.isNumeric(amount)){

            currbalance = amount - totalSum;

        }


    });

    $('#total_price').text('RM '+totalSum.toFixed(2));

    $('#balance').text('RM '+currbalance.toFixed(2));});

我想使用balanceid 显示它:


 <p>Balance: <b id="balance">RM 0.00</b></p>

但是我的输出没有显示。我觉得我value=amount的错了。


宝慕林4294392
浏览 133回答 1
1回答

呼啦一阵风

我已将data-amountand添加data-price到您的输入中,然后更改currbalance = amount - totalSum;为currbalance += (amount - totalSum);,因为如果不是currbalance,则不等于data-amount$('.form-group').on('input', '.prc', function() {&nbsp; var totalSum = 0;&nbsp; var currbalance = 0;&nbsp; $('.form-group .prc').each(function() {&nbsp; &nbsp; var quantity = $(this).val();&nbsp; &nbsp; var price = $(this).attr('data-price');&nbsp; &nbsp; var item_amount = parseFloat(price * quantity);&nbsp; &nbsp; if ($.isNumeric(quantity)) {&nbsp; &nbsp; &nbsp; totalSum += parseFloat(item_amount);&nbsp; &nbsp; }&nbsp; &nbsp; var amount = $(this).attr('data-amount');&nbsp; &nbsp; if ($.isNumeric(amount)) {&nbsp; &nbsp; &nbsp; currbalance += (amount - totalSum);&nbsp; &nbsp; }&nbsp; });&nbsp; $('#total_price').text('RM ' + totalSum.toFixed(2));&nbsp; $('#balance').text('RM ' + currbalance.toFixed(2));});<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><div class="form-group">&nbsp; <input style="width:200px" type="number" data-amount="120" data-price="12" class="form-control pull-right prc" placeholder="Enter amount">&nbsp; <input style="width:200px" type="number" data-amount="220" data-price="22" class="form-control pull-right prc" placeholder="Enter amount"></div><p>Total: <b id="total_price">RM 0.00</b></p><p>Balance: <b id="balance">RM 0.00</b></p>
打开App,查看更多内容
随时随地看视频慕课网APP