如何取消选中AJAX中的复选框?

AhK*_*ing 2 javascript ajax checkbox jquery

说真的,我已经尝试了一些我能想到的但是我仍然无法找到一种方法,一旦弹出警报就取消选中复选框.

var sessionvar;
            $.ajaxSetup({cache: false})
            $.get('test.php' ,function (data) {
                sessionvar = data;
                alert(sessionvar);
                if(checked){    
                    if(sessionvar > 2){
                        alert('You only allowed to select maximum 3');
                        setsession(sBorrowValue, "UNSET");
                        $(this).attr('checked', false);
                    }
                    else{
                        setsession(sBorrowValue, "SET");
                    }
                }
                else{
                    setsession(sBorrowValue, "UNSET");
                }
            });
Run Code Online (Sandbox Code Playgroud)

我想在取消选中后复选框alert('You only allowed to select maximum 3');但不能正常工作.我也尝试过使用this.checked = false,$(this).attr('checked', false);,$(this).prop('checked', false);但仍然它不是取消选中该复选框.

注意:this.checked = false从ajax外部工作.但是当我把它放在里面时,它不起作用.

Ram*_*asi 5

你在里面编写代码$.get,并试图来指代checkbox使用$this.你确定这是对的吗?$(this)这里是未定义的.

您应该使用复选框实际ID:

$('#myCheckboxid').attr('checked', false); //or true
Run Code Online (Sandbox Code Playgroud)

编辑

您的最终代码将如下所示:

var sessionvar;
$.ajaxSetup({cache: false})
$.get('test.php' ,function (data) {
    sessionvar = data;
    alert(sessionvar);
    if(checked){    
        if(sessionvar > 2){
            alert('You only allowed to select maximum 3');
            setsession(sBorrowValue, "UNSET");
            $('#myCheckboxid').attr('checked', false); //or true
        }
        else{
            setsession(sBorrowValue, "SET");
        }
    }
    else{
        setsession(sBorrowValue, "UNSET");
    }
});
Run Code Online (Sandbox Code Playgroud)