从生成的数量计算%

时间:2015-06-11 10:31:08

标签: javascript jquery

我的代码计算输入数字的8%,例如在下面的代码中。如果您在第一个框中输入“1”并在第二个框中输入“100”,则总退款(包括8%)= 108

JavaScript代码:

$(document).ready(function() {
    var sum = 0;
    function calcSum(prevVal) {
        var val1 = $('#val1').val();
        var val2 = $('#val2').val();
        var val3 = $('#val3').val();
        var val4 = $('#val4').val();
        this.sum = parseFloat(val1) * parseFloat(val2) + parseFloat(val3) * parseFloat(val4);
        return this.sum;
    }
    var subAmt = $("#sub"),
        taxAmt = $("#tax"),
        totAmt = $("#total");
    $(".val").each(function() {
        var prevVal = this.value / 1,
            self = this;
        $(this).keyup(function() {
            subAmt.val(calcSum.call(self, prevVal));
            totAmt.val(this.sum + this.sum * parseFloat(taxAmt.val() / 100));
            prevVal = self.value; 
        });
    });
});

JSFiddle

我想要做的是计算底部框中第二个8%的20%。所以在这个例子中答案应该是1.60。

然后我想在总框106.40(108 - 1.60)中显示。

1 个答案:

答案 0 :(得分:0)

为什么不将税收(8%)提取到单独的变量?像这样的东西?

var taxDelta = this.sum*parseFloat(taxAmt.val()/100);

然后你可以自由地将它添加到总数中:

totAmt.val(this.sum + taxDelta);

如果需要,计算20%:

var addTax = taxDelta * taxAVal;