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