-5

我有一些代码,这里的人很好地帮助了我,我需要稍作修改,但我正在努力让它工作。我已将代码添加到 jsfiddle

我想要另外两个盒子来添加付款次数和保费成本。(我已将它们标记为“2)

您将看到前两个框计算小计(包括补救在内的总和在我的网页上有效,但由于某种原因不在小提琴上)

你能帮忙吗?

http://jsfiddle.net/arrNe/1/

$(document).ready(function () {
    var sum = 0;
    function calcSum(prevVal) {
        var val1 = $('#val1').val();
        var val2 = $('#val2').val();
        sum = parseFloat(val1) * parseFloat(val2);
        return 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(sum + sum * parseFloat(taxAmt.val() / 100));
            prevVal = self.value;

        });
    });
});
4

1 回答 1

0

根据我对您最后评论的理解。

第三个和第四个盒子应该有不同的ID,即#val3 , #val4分别。

所以它会有点像这样。请参阅您的这个更新的FIDDLE

在 4 个框中分别输入值 4、5、10、5,您的小计将如预期的那样为 70。

Just a notecalcSum:仅在提供所有四个字段时调用该函数。将条件放在那里,否则即使缺少一个字段,它也会返回 NaN(不是数字)。

if(val1 && val2 && val3 && val4){
    // do your calculation and return the sum
}
else{
    alert("please fill all the fields :)");
}
于 2013-07-23T13:04:12.773 回答