javascript - 使用 Javascript 获取每种模式的总金额

标签 javascript php html

 <?php
    $ctr = 0;
    while($ctr <= 10){
    ?>
    <td><input required type='text' name='amount[<?echo $ctr; ?>]' class='amount'></td>
    <td><input required type='text' name='mode[<?echo $ctr; ?>]' value='Cash'></td>
    <?php
    $ctr++;
    }
    ?>
    Total Amount: <span class="total_amount">0.00</span>
    Total Cash : <span class="total_cash">0.00</span>
    Total Check: <span class="total_check">0.00</span>

$(document).on('blur','.amount',function () {
    var total = 0;
    var total_cash = 0;
    var total_check = 0;

    $('.amount').each(function () {
        total += parseFloat($(this).val());
    });

    $('.total_amount').html(total);
});

使用上面的代码,我可以获得我在输入金额字段中编码的数字的总数。我怎样才能获得每种模式、现金(默认)和支票(用户可以更改模式来检查)的总额?

最佳答案

如果您确定下一个输入宽度 mode 始终对应,则可以使用 JQuery.next。所以需要检查每个参数的值是否为NaN。

$(document).on('blur','.amount',function () {
    var total = 0;
    var total_cash = 0;
    var total_check = 0;
    var val, mode;
    $('.amount').each(function () {
        val = parseFloat($(this).val());
        val = val ? val : 0;
        total += val;
        mode = $(this).next().val();
        switch(mode) {
            case "Check" : total_check += val; break;
            case "Cash"  : total_cash  += val; break;                
        } 
    });

    $('.total_amount').html(total);
    $('.total_cash').html(total_cash);
    $('.total_check').html(total_check);    
});

http://jsfiddle.net/ag0a78jd/

关于javascript - 使用 Javascript 获取每种模式的总金额,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31236311/

相关文章:

php - Sphider 搜索引擎出现 "URLs must include"问题

javascript - 如何在我的代码编辑器应用程序中将颜色应用于保留字

html - 输入复选框默认选中

javascript - 在 JavaScript 中链接多个异步函数

javascript - Sails.js:重定向后检索 URL 参数

javascript - 使用 JavaScript 的小时和分钟

php - 在 PHP 中读取和迭代 .txt

php - 将数据从 jQuery 传递到一组 PHP 文件

javascript - 如果我将一个 JavaScript 事件绑定(bind)到一个元素,然后删除该元素,该事件会发生什么?

php - 远程停止 NodeJS