Javascript 当我从模式中选择“是”选项时,如何取消选中复选框?

Javascript 当我从模式中选择“是”选项时,如何取消选中复选框?,javascript,jquery,html,Javascript,Jquery,Html,当我选中模式弹出窗口显示的复选框并向用户确认是否要检查此行时,当我选中并选择选项YES整行背景色更改时,以及当我取消选中表格行删除的背景色复选框但按钮仍处于选中状态时,我面临的问题。我怎样才能解决这个问题 代码 这是因为在这两种情况下,您在modal上按YES,这一行被执行 $('input[name=chkOrgRow]').prop('checked', true); 将JS更改为: $(function () { var checkbox_one= '';

当我选中模式弹出窗口显示的复选框并向用户确认是否要检查此行时,当我选中并选择选项YES整行背景色更改时,以及当我取消选中表格行删除的背景色复选框但按钮仍处于选中状态时,我面临的问题。我怎样才能解决这个问题

代码


这是因为在这两种情况下,您在modal上按YES,这一行被执行

    $('input[name=chkOrgRow]').prop('checked', true);
将JS更改为:

 $(function () {
    var checkbox_one= '';
    $("[name='chkOrgRow']").change(function(e) {
        // console.log('clicked');
        checkbox_one = $(this);
        openmodal();
    });

    $('.buttons').on('click', function () {
        var yes = $(this).text();
        if (yes === 'Yes') {
            // console.log('yes');
            $("#ModalConfirmSettled").modal('hide');
            if(!$('input[name=chkOrgRow]').prop('checked')){
                $('input[name=chkOrgRow]').prop('checked', false);
            }else{
               $('input[name=chkOrgRow]').prop('checked', true);
            }


            checkbox_one.parents('tr').toggleClass('highlight');
            //return true;
        } else {
            console.log('close');
        }
    });
});

请参考下面的代码,问题是切换类,如果您选择“是”选项,如果它已经被选中。我使用的是add/remove类,其余逻辑是相同的:

$(函数(){
var复选框_one=“”;
$(“[name='chkOrgRow']”)。更改(函数(e){
复选框_one=$(此项);
openmodal();
});
$('.buttons')。在('click',function()上{
var yes=$(this.text();
如果(是==‘是’){
$(“#modalconfirmsetted”).modal('hide');
复选框_one.parents('tr')。toggleClass('highlight');
}否则{
console.log('close');
}
$('.highlight').css(“背景色”)?$('input[name=chkOrgRow]).prop('checked',true):$('input[name=chkOrgRow]).prop('checked',false);
});
});
函数openmodal(){
$('#modalconfirmsetted').modal('show',函数(数据){
console.log('数据:'+数据);
});
}
。突出显示{
背景色:#5BF5B!重要;
}

会计
报表编号
附属代码
期间开始-结束
金额欧元
到期日
地位
行动
1.
1234567
2020-10-10
32323
2020-10-20
应得的
&时代;
标记为已结算
你确定吗

接近 对 &时代; 商户付款详情
我已经修复了您的代码并创建了一个小提琴:


您能用fiddle或snippet添加完整的代码吗?该jsFiddle中没有打开模式。您包含了它的代码了吗?另外,我没有看到您的标签上有
按钮
类。@ShivPatne Hi@Shiv,当我在“选择无更改”后取消选择此选项时。我选中了下面的场景1)选中复选框->单击“是”->它选中复选框并设置行背景2)重复步骤2,将显示相同的结果3)取消选中复选框->在模式上单击关闭->它将取消选中复选框并删除行背景不是预期的行为吗?我理解的是,您的模式在选中/取消选中事件中都打开,所以要设置取消选中,你必须点击关闭模式。我已经更新了答案,请按预期检查它?完成兄弟:)
   $(function () {
        var checkbox_one= '';
        $("[name='chkOrgRow']").change(function(e) {
            $('input[name=chkOrgRow]').prop('checked', false);
            // console.log('clicked');
            checkbox_one = $(this);
            openmodal();
        });

        $('.buttons').on('click', function () {
            var yes = $(this).text();
            if (yes === 'Yes') {
                // console.log('yes');
                $("#ModalConfirmSettled").modal('hide');
                $('input[name=chkOrgRow]').prop('checked', true);

                checkbox_one.parents('tr').toggleClass('highlight');
                //return true;
            } else {
                console.log('close');
            }
        });
    });

    function openmodal() {
        $('#ModalConfirmSettled').modal('show', function (data) {
            console.log('data:' + data);
        });

    }
    $('input[name=chkOrgRow]').prop('checked', true);
 $(function () {
    var checkbox_one= '';
    $("[name='chkOrgRow']").change(function(e) {
        // console.log('clicked');
        checkbox_one = $(this);
        openmodal();
    });

    $('.buttons').on('click', function () {
        var yes = $(this).text();
        if (yes === 'Yes') {
            // console.log('yes');
            $("#ModalConfirmSettled").modal('hide');
            if(!$('input[name=chkOrgRow]').prop('checked')){
                $('input[name=chkOrgRow]').prop('checked', false);
            }else{
               $('input[name=chkOrgRow]').prop('checked', true);
            }


            checkbox_one.parents('tr').toggleClass('highlight');
            //return true;
        } else {
            console.log('close');
        }
    });
});
  $(function () {
    var checkbox_one= '';
    $("[name='chkOrgRow']").click(function(e) {
        $('input[name=chkOrgRow]').prop('checked', false);
        // console.log('clicked');
        checkbox_one = $(this);
        openmodal();
                    return false;
    });

    $('.buttons').on('click', function () {
        var yes = $(this).text();
        if (yes === 'Yes') {
            // console.log('yes');
            $("#ModalConfirmSettled").modal('hide');
            if($('input[name=chkOrgRow]').prop('checked')){
            $('input[name=chkOrgRow]').prop('checked', false);
            }else{
             $('input[name=chkOrgRow]').prop('checked', true);
            }


            checkbox_one.parents('tr').toggleClass('highlight');
            //return true;
        } else {
            console.log('close');
        }
    });
});

function openmodal() {
    $('#ModalConfirmSettled').modal('show', function (data) {
        console.log('data:' + data);
    });

}