【发布时间】:2016-12-12 21:20:14
【问题描述】:
说真的,我已经尝试了所有我能想到的方法,但我仍然找不到在弹出警报后如何取消选中复选框的方法。
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 maximum 3'); 之后的复选框,但不起作用。我也尝试使用this.checked = false、$(this).attr('checked', false);、$(this).prop('checked', false);,但仍然没有取消选中复选框。
注意:this.checked = false 在 ajax 外部时有效。但是当我把它放在里面时,它就不起作用了。
【问题讨论】:
-
$(this)是undefined。为您的复选框使用id。 -
你的代码没问题。它与您未指定的 html 属性有关。尝试在您的 html 中添加 checked="checked" ,您的代码将按预期工作。这也不是 ajax、jquery 或 javascript 问题。这只是一个找不到的 DOM 属性错误。干杯:D
-
是的,我想一定是它。我能想到的 2 个可能原因是我的 id 未定义或我的 dom 属性有问题。让我修改我的代码
标签: javascript jquery ajax checkbox