Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery复选框禁用并添加类_Javascript_Jquery_Ajax_Checkbox - Fatal编程技术网

Javascript jQuery复选框禁用并添加类

Javascript jQuery复选框禁用并添加类,javascript,jquery,ajax,checkbox,Javascript,Jquery,Ajax,Checkbox,我有一个表,其中有行列表,每行有两个复选框 我试图做的是,当有人选中复选框时,它会使用ajax向服务器发送请求,如果它通过了,则使用数据响应。如果失败,则将tr颜色更改为绿色。我完成了此步骤 现在我想当它成功时,它应该启用同一tr上的其他复选框,以便现在用户可以进行第二步 $(“#SendReview”)。单击(函数(){ var selected=“”; $('.ReviewForm')。每个(函数(){ selected=selected+“,”+$(this.attr('id'); })

我有一个表,其中有行列表,每行有两个复选框 我试图做的是,当有人选中复选框时,它会使用ajax向服务器发送请求,如果它通过了,则使用数据响应。如果失败,则将tr颜色更改为绿色。我完成了此步骤

现在我想当它成功时,它应该启用同一tr上的其他复选框,以便现在用户可以进行第二步

$(“#SendReview”)。单击(函数(){
var selected=“”;
$('.ReviewForm')。每个(函数(){
selected=selected+“,”+$(this.attr('id');
});
$.ajax({
url:'@url.Action(“VerifyFormRquest”,“结果”),
类型:“POST”,
数据:{
scanid:已选择
},
成功:函数(数据、文本状态、jqXHR){
警报(数据。成功);
data.success.split(',).forEach(函数(c){
如果(c!=“”){
var m=$('#示例tr:has(td:contains('+c+')))).css('background-color','lightgreen');
}
});
},
错误:函数(jqXHR,textStatus,errorshown){}
});
});

您可以使用
prop
方法执行此操作

$(“#myOtherCheckbox”).prop(“禁用”,false)

如果还要向其中添加类,请执行以下操作:

$(“#myOtherCheckbox”).prop(“disabled”,false).addClass(“someClass”)

您应该使用

("#J15000012").prop("disabled",false);

要选中复选框而不是使用
.removeAttr
,因为从
jquery 3

开始,它不会将值设置为
false
,因为您已经有了获取
td
的模式,所以可以使用
next('td')
获取下一个:


问题是什么?他说了他想做的事。他希望在AJAX请求成功时启用第二个复选框。您需要实现call()函数,该函数具有AJAX调用。在ajax调用中,如果成功启用另一个复选框,如果失败,则将代码添加到ajax的错误函数中。他正在尝试启用复选框,而不是选中它。是的,你是对的,我忽略了
启用的
作为
选中的
@adosi我现在做的是在我的类中添加labid作为类,然后添加$('.+c)。prop('disabled',false);谢谢!!这是做
的正确方法。removeattr
不再将属性设置为false
。prop
更有效使用
。在这种情况下,prop
更受欢迎。请看我现在所做的,我在类中添加labid作为类,然后添加$('.+c)。prop('disabled',false);谢谢!!从jQuery 3开始,
removeAttr
不再使用
将相应的属性设置为
false
。prop
是将属性设置为true或false的正确方法感谢@MuhammadOmerAslam..第一条评论中已经提到。不是我的..而是
$(“#myOtherCheckbox”)
并不是这样做的正确选择器…我有一个表,表中有行列表,每行有两个复选框,您的选择器将指向这两行?我现在所做的是将labid添加为类,然后在类中添加$('.+c).prop('disabled',false);谢谢!!
var current_td = $('#example td:contains('+ c +')');

//If the current td found get the next one and remove the disabled property
if( current_td.length > 0 ){
    current_td.next('td').prop('checked',false);
}