Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.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 如何循环通过一组具有相同类名的复选框?_Javascript_Jquery_Html_Checkbox - Fatal编程技术网

Javascript 如何循环通过一组具有相同类名的复选框?

Javascript 如何循环通过一组具有相同类名的复选框?,javascript,jquery,html,checkbox,Javascript,Jquery,Html,Checkbox,我有一个动态表格,表格单元格带有复选框字段。此字段是从DB填充的,因此我的表是动态的。我想根据它们的类名循环检查复选框。在该循环中,我要检查每个复选框的值。例如,如果值等于1,我希望选中复选框,如果不选中。Alo我不确定是否可能,但我想为每个复选框设置唯一的ID。因为我的表是动态的,所以我的字段需要有唯一的ID。下面是我的代码示例: <table> <thead> <tr> <th>#</th&

我有一个动态表格,表格单元格带有复选框字段。此字段是从DB填充的,因此我的表是动态的。我想根据它们的类名循环检查复选框。在该循环中,我要检查每个复选框的值。例如,如果值等于1,我希望选中复选框,如果不选中。Alo我不确定是否可能,但我想为每个复选框设置唯一的ID。因为我的表是动态的,所以我的字段需要有唯一的ID。下面是我的代码示例:

<table>
    <thead>
        <tr>
            <th>#</th>
            <th>Time Slots</th>
            <th>Block</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td></td>
            <td>~(SLOT_LABEL)</td>
            <td>
                <span>
                <input type="checkbox" name="CF-[Events]" class="block" id="block_"+Value that will make this ID unique. value="~(SLOT_ID)"/>
                </span>
            </td>
        </tr>
    </tbody>
</table>

#
时隙
块
~(SLOT_标签)

同样,在我使用的当前语言中,从DB中读取值时,我必须使用名称标记。如果有人能帮忙,请告诉我。谢谢。

您可以使用属性选择器通过元素的
名称和
值来检索元素。试试这个:

$("input[name='CF-[Events]']").each(function() {
   if($(this).val() === "1")
   {
       $(this).prop("checked", true);
   }
});
$('input[name="CF-[Events]"][value="1"]').prop("checked", true);

您可以使用属性选择器通过元素的
名称和
值来检索元素。试试这个:

$('input[name="CF-[Events]"][value="1"]').prop("checked", true);

您可以在jquery中按每个循环执行

$('.ClassName').each(function(i, o) {
    // o is object in your case checkbox    
    // i is index
    // your code
});

您可以在jquery中按每个循环执行

$('.ClassName').each(function(i, o) {
    // o is object in your case checkbox    
    // i is index
    // your code
});

如果不需要jQuery解决方案,也可以使用
querySelector
获取这些元素:

var inputs = document.querySelectorAll("input.block");
for(var i = 0; i < inputs.length; i++) {
  inputs[i].checked = true;
}
var inputs=document.querySelectorAll(“input.block”);
对于(变量i=0;i
如果您不想要jQuery解决方案,也可以使用
querySelector
获取这些元素:

var inputs = document.querySelectorAll("input.block");
for(var i = 0; i < inputs.length; i++) {
  inputs[i].checked = true;
}
var inputs=document.querySelectorAll(“input.block”);
对于(变量i=0;i
我可以使用类名而不是名称标记进行迭代吗?您可以,
$('input.block[value=“1”]').prop(“checked”,true)也可以。我可以用if/else语句来实现吗?你可以用一句话来代替这句话,尽管这会显得多余和缓慢。你能举个例子吗?我尝试使用$(this).val(),但对我无效。我可以使用类名而不是名称标记进行迭代吗?您可以,
$('input.block[value=“1”]').prop(“checked”,true)也可以。我可以用if/else语句来实现吗?你可以用一句话来代替这句话,尽管这会显得多余和缓慢。你能举个例子吗?我尝试使用$(this).val(),但对我不起作用。我将如何基于该值执行复选框和未选中框?我将如何基于该值执行复选框和未选中框?我是否可以使用类名而不是名称标记?请参阅Rory的回答:)当我尝试使用$(this).prop(“checked”,true)的示例时;如果我使用$('input.block[value=“1”]').prop(“checked”,true),那么这不起作用;然后工作。你知道为什么吗?我这样问是因为我想设置if/else语句。try
$(this).val()===1
而不是“1”我可以使用类名而不是名称标记吗?请参阅Rory的答案:)当我尝试使用你的示例$(this.prop(“checked”,true);如果我使用$('input.block[value=“1”]').prop(“checked”,true),那么这不起作用;然后工作。你知道为什么吗?我这样问是因为我想设置if/else语句。请尝试
$(this).val()===1
而不是“1”。我想使用类名而不是名称标记。我想使用类名而不是名称标记。