取消选中jquery中复选框的值(使用ajax和php)

取消选中jquery中复选框的值(使用ajax和php),php,jquery,checkbox,Php,Jquery,Checkbox,我有一个可编辑的ajax表,并且有一个“解锁”字段,每行都有一个复选框 当我检查chekbox时,我需要得到值1(这部分我没问题!) 获取复选框值的代码: ($(“#解锁u输入”+ID).val();)) 但是当我取消选中任何一个复选框时,我需要得到值0(我需要这部分的帮助) 所以。。。。我如何在jquery中做到这一点?Thx您可以打开一个:选中的选择器。然后,当复选框未选中时,您将返回未定义的,这是错误的,因此: var result = $("#unlock_input_" + ID +

我有一个可编辑的ajax表,并且有一个“解锁”字段,每行都有一个复选框

当我检查chekbox时,我需要得到值1(这部分我没问题!)

获取复选框值的代码:

$(“#解锁u输入”+ID).val();
))

但是当我取消选中任何一个复选框时,我需要得到值0(我需要这部分的帮助)


所以。。。。我如何在jquery中做到这一点?Thx

您可以打开一个
:选中的
选择器。然后,当复选框未选中时,您将返回
未定义的
,这是错误的,因此:

var result = $("#unlock_input_" + ID + ":checked").val() || 0;
result
如果选中,则会以复选框的值结束,如果未选中,则会以
0
结束,因为这是一种工作方式

另一种写作方式:

var result = $("#unlock_input_" + ID).filter(":checked").val() || 0;
当然,更直接的是:

var cb = $("#unlock_input_" + ID)[0],
    result = cb.checked ? cb.value : 0;

您可以打开一个
:选中的
选择器。然后,当复选框未选中时,您将返回
未定义的
,这是错误的,因此:

var result = $("#unlock_input_" + ID + ":checked").val() || 0;
result
如果选中,则会以复选框的值结束,如果未选中,则会以
0
结束,因为这是一种工作方式

另一种写作方式:

var result = $("#unlock_input_" + ID).filter(":checked").val() || 0;
当然,更直接的是:

var cb = $("#unlock_input_" + ID)[0],
    result = cb.checked ? cb.value : 0;

您可以使用复选框的
checked
属性来决定是1还是0。试试这个

if($("#unlock_input_" + ID)[0].checked){
    alert("1");
}
else{
    alert("0");
}
您可以使用jQuery
is
方法检查复选框是否选中

if($("#unlock_input_" + ID).is(":checked")){
    alert("1");
}
else{
    alert("0");
}

您可以使用复选框的
checked
属性来决定是1还是0。试试这个

if($("#unlock_input_" + ID)[0].checked){
    alert("1");
}
else{
    alert("0");
}
您可以使用jQuery
is
方法检查复选框是否选中

if($("#unlock_input_" + ID).is(":checked")){
    alert("1");
}
else{
    alert("0");
}

你可以检查一下是否有支票

if($("#unlock_input_" + ID).is(':checked')){
    myVal = "1";
}
else{
    myVal = "0";
}

你可以检查一下是否有支票

if($("#unlock_input_" + ID).is(':checked')){
    myVal = "1";
}
else{
    myVal = "0";
}
将代码更改为(使用以请求选中的属性):

编辑:
如果明确需要该值而不是
1
,只需执行以下操作:

var element = $("#unlock_input_" + ID);
var result = element.prop('checked')?element.val():0;
将代码更改为(使用以请求选中的属性):

编辑:
如果明确需要该值而不是
1
,只需执行以下操作:

var element = $("#unlock_input_" + ID);
var result = element.prop('checked')?element.val():0;

@user1029834:我的初始答案有一个错误,我现在已经修复了它(我取消了
:选中的
选择器)。非常像这个简短的。。。我可能会去看
?:路线:)@CD001:有好有坏。使用
:checked
肯定会比我上面提到的上一个选项执行得更差,但当然,除非你处于一个紧密的循环中,否则这并不重要。所以这是马的课程…:-)(我在项目中所做的是使用一个扩展方法,我添加了一个名为
checkedVal
,如果使用有效的方法进行检查,它将返回值,如果未选中,它将返回
undefined
。@user1029834:我最初的答案中有一个错误,我现在已经修复了它(我取消了
:checked
选择器).很像这张照片的短处。。。我可能会去看
?:路线:)@CD001:有好有坏。使用
:checked
肯定会比我上面提到的上一个选项执行得更差,但当然,除非你处于一个紧密的循环中,否则这并不重要。所以这是马的课程…:-)(我在项目中所做的是使用我添加的名为
checkedVal
的扩展方法,如果使用有效的方法进行检查,则返回值;如果未选中,则返回
未定义的值。)
.is(“:checked”)
shubder;-)如果你要分支,我肯定会第一个分支,除非复选框可能不存在。
.is(“:checked”)
shubder;-)如果你要分支,我肯定会第一个分支,除非复选框不存在。