说真的,我已经尝试了我能想到的所有方法,但我仍然找不到在弹出警报时取消选中复选框的方法。
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");
}
});
我想取消选中 alert('You only allowed to select max 3');
之后的复选框,但不起作用。我还尝试使用 this.checked = false
, $(this).attr('checked', false);
, $(this).prop(' check', false);
但仍然没有取消选中复选框。
注意:this.checked = false
在 ajax 外部时有效。但当我把它放在里面时,它不起作用。
最佳答案
您正在 $.get
中编写代码,并尝试使用 $this
引用该复选框
。你确定这是正确的吗?这里的 $(this)
未定义。
您应该使用复选框实际 ID:
$('#myCheckboxid').attr('checked', false); //or true
<小时/>
编辑
您的最终代码将如下所示:
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");
}
});
关于javascript - 如何取消 AJAX 中的复选框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38806511/