Javascript 复选框更改事件记录惩罚或折扣jquery

Javascript 复选框更改事件记录惩罚或折扣jquery,javascript,jquery,Javascript,Jquery,我试图根据所选季度和当前季度获得罚款或折扣。例如,用户选择第一季度,因为它很早就通过了,将受到处罚。基本上,如果季度通过,将受到处罚。我的问题是这样的。如何使这些值保持不变而不消失示例我们继续并单击第一季度将受到惩罚,如果用户单击第二季度,惩罚将累积。由于其目前处于第三季度,应该有一个折扣,这是正在发生的,但罚款损失。我希望惩罚能持续下去。这怎么可能。 $('table#table')。on('change','tr input:checkbox.quarter',function(){ var

我试图根据所选季度和当前季度获得罚款或折扣。例如,用户选择第一季度,因为它很早就通过了,将受到处罚。基本上,如果季度通过,将受到处罚。我的问题是这样的。如何使这些值保持不变而不消失示例我们继续并单击第一季度将受到惩罚,如果用户单击第二季度,惩罚将累积。由于其目前处于第三季度,应该有一个折扣,这是正在发生的,但罚款损失。我希望惩罚能持续下去。这怎么可能。
$('table#table')。on('change','tr input:checkbox.quarter',function(){
var checked=$(this).closest('tr').find('input:checkbox.quarter:checked').length;
var value=$(this.nexist('tr').find('input.quarter').val();
变量日期=新日期();
var quarty=parseInt(date.getMonth()/3)+1;
var quaeternow=季度;
var税=(值*已检查)。toFixed(2);
var贴现=0;
var罚金=0;
console.log(quaeternow);
如果(选中){
如果(选中>=quaeternow){
//警报(“折扣”);
折扣=(税*.1)。固定(2);
//惩罚=0;
}否则{
//警报(“利息”);
//折扣=0;
罚金=(税*.02)。toFixed(2);
}
$('#div')。追加('折扣'+折扣+'
'); $('#div')。追加('罚金'+罚金+'

'); 控制台日志(折扣); 控制台日志(惩罚); } });

第一季度
第二季度
第三季度
第四季度

据我所知,你可以这样做

var贴现=0;
var罚金=0;
var quarty=parseInt(新日期().getMonth()/3)+1;
$('#table')。在('change','input.quarter:checkbox',function()上{
var cquater=+$(this.attr('id1').match(/^\d+/)),
税=+此值,
数字化信息系统,
笔;
如果(cquater<季度){
pen=税*.02;
dis=0;
}否则{
dis=税*.1;
pen=0;
}
如果(选中此项){
罚款+=笔;
折扣+=dis;
}否则{
惩罚-=钢笔;
折扣-=dis;
}
$('#div')。追加('折扣'+折扣+'
'); $('#div')。追加('罚金'+罚金+'

'); });

第一季度
第二季度
第三季度
第四季度

为什么所有的
复选框都有相同的
id
@GuruprasadRao我会修正我没有看到的,我会把它改成
数据属性
@ArunPJohny我会再次检查我的计算结果有点不同
我的计算结果有点不对劲
@ArunPJohny你能解释一下吗?我试着理解代码有一段时间了,但我似乎无法理解你的想法我有一个问题,如果有多行怎么办。我的问题是pen和dis正在共享,我的意思是它正在增加。我怎样才能使var dis和pen只在其各自的行中使用。这太简单了,以至于我错过了它,我正在集中精力为每行创建不同的变量。这把小提琴很好用。