我有一个发票计算器,我需要我的发票总金额根据我想要申请的不同选择的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",
});
答案 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应用程序。