检查复选框数组中的复选框是不是被选中

Posted

技术标签:

【中文标题】检查复选框数组中的复选框是不是被选中【英文标题】:Check if checkbox in checkbox array is checked检查复选框数组中的复选框是否被选中 【发布时间】:2019-07-04 13:07:10 【问题描述】:

我有一组复选框。如果有一个选中的复选框,它将被添加到一个文本字符串中。这是我的代码:

  var a = $(this).closest('tr').parent().closest('tr').find('input[type="checkbox"].CheckedArray');

        for (var i = 0; i < a.length; i++) 
            if (a[i].is(':checked')) 
                list= list+ a[i].value + ", ";
            
            alert(list);
        

        <table id="" class="table">
<tr>
    <td>
        <div class="form-horizontal form-inline">
            <input class="CheckedArray" type="Checkbox" value="' + Id + '" id="CheckedArray" name="CheckedArray" />Select<div class="form-group"><label for="" class="control-label col-sm-1"></label><label for="" class="control-label col-sm-4">PD No: </label><div class="col-sm-3"><input name="PDNo" class="form-control input-sm " id="PDNo" type="text" /></div></div>
        </div>
    </td>
</tr>

我使用checked 作为条件,但它没有显示任何警报。我不想使用过滤功能,因为我需要迭代值来显示其他输入。

【问题讨论】:

你能添加你的 html 吗?其中包括表格 我正在使用 jquery 来定义输入。但我已经编辑了问题 “我有一个复选框数组。” 复选框数组通常意味着多个复选框,然而我只看到一个名为 #CheckedArray? 的复选框 【参考方案1】:
if ( $( elem ).prop( "checked" ) )

  \\Code_here

或者

if ( $( elem ).is( ":checked" ) )

  \\Code_here

两者都可以。尝试在您的代码中添加 $ 符号。

【讨论】:

【参考方案2】:

您获得了选中复选框的位置,但如果您不使用 $ 符号,您将永远无法获得该元素..

使用下面的代码,一切都会好起来的。

$(a[I]).prop("checked");

【讨论】:

它有效!谢谢。我只是想问一下,如果我想将文本分配到与选中复选框位于同一行的输入中,我使用相同的代码但我没有工作? $(b[i]).val("hello"); 您可以使用“closest”或“find”属性来获取复选框旁边的元素。然后分配文本....例如。 $(a[i]).find(":input").Val("你的文本框"); 让我知道您的复选框旁边的输入类型.. 这样我就可以将确切的代码发送给您.... 输入是PDNo。问题中已说明。我真正想要做的是,第一行选中的复选框输入需要由用户键入。但是,如果用户选中另一个复选框,则该特定行上的输入将使用第一个输入值自动填充。【参考方案3】:

你能用吗


  <script>
    $(document).ready(function()
    
     $(".CheckedArray").change(function()
       
         console.log( $(this).prop("checked"),$(this).attr("id") );

       );

    );
     </script>

<table id="" class="table">
<tr>
<td>
<div class="form-horizontal form-inline">
    <input class="CheckedArray" type="Checkbox" value="' + Id + '" id="CheckedArray" name="CheckedArray" />Select<div class="form-group"><label for="" class="control-label col-sm-1"></label><label for="" class="control-label col-sm-4">PD No: </label><div class="col-sm-3"><input name="PDNo" class="form-control input-sm " id="PDNo" type="text" /></div></div>
</div>
</td>
</tr>

【讨论】:

以上是关于检查复选框数组中的复选框是不是被选中的主要内容,如果未能解决你的问题,请参考以下文章

编写jquery代码检查复选框是不是被选中并指示选中的复选框数量?

使用jquery检查复选框是不是被选中

如何检查复选框是不是被选中?

iCheck 检查复选框是不是被选中

如何检查复选框是不是被选中?

检查复选框是不是被选中而不单击它