更改在我的选择列表中计算百分比

时间:2012-10-22 08:13:37

标签: javascript jquery select

我有一个发票计算器,我需要我的发票总金额根据我想要申请的不同选择的IVA百分比而变化。

这是我的example,你可以看到我创建了一个精选的可编辑,如果你点击IVA 21%你得到2个选项:Iva 21%或NO IVA。现在总量是根据IVA的21%计算的。 当我选择没有时,我怎样才能使我的总金额不计算21%?

这是我的可编辑选择

$('.editable_selectiva').editable(function(value, settings) { 
             console.log(this);
             console.log(value);
             console.log(settings);
             return(value);
          }, {
               data   : "{'IVA 21%':'IVA 21%','NO IVA':'NO IVA'}", 
             type    : 'select',
             style  : "inherit",
         });

1 个答案:

答案 0 :(得分:1)

我已经部分解决了你的问题。我只是稍微改变了方法:

function tally(selector) {
    var total = 0;
    $('p.editable_number').each(function() {
        total += parseInt($(this).text()) || 0;
        $('#subtotal').html(total);
        if ($('.editable_selectiva').text() === "NO IVA") {
            $('#total').html(0);
            $('#total1').html(total);
        }
        else {
            $('#total').html(total*0.21);
            $('#total1').html(total*1.21);
        }
    })
}

虽然它不是最干净的方法(尝试改为“NO IVA”,然后添加新产品,你会发现它有效)。 您现在唯一需要做的就是当用户将selctor从“IVA 21”更改为“NO IVA”时以某种方式执行计数方法。

建议:考虑使用Backbonejs MVC框架来构建javascript应用程序。它为事件处理提供了很好的工具,并允许前端开发人员在Javascript中构建更干净的Web应用程序。