Javascript 在数组中循环以启用复选框
我有一组复选框和一个数组,其中包含应选择哪些复选框的索引。我试图循环遍历数组,并对其中的每个索引执行循环。我制作了一个JSFIDLE示例,让你们知道我在做什么。我也有JQuery库,如果这能让事情变得更简单的话 试试这个:Javascript 在数组中循环以启用复选框,javascript,jquery,Javascript,Jquery,我有一组复选框和一个数组,其中包含应选择哪些复选框的索引。我试图循环遍历数组,并对其中的每个索引执行循环。我制作了一个JSFIDLE示例,让你们知道我在做什么。我也有JQuery库,如果这能让事情变得更简单的话 试试这个: var arrx=new Array(); arrx[0]=4; arrx[1]=5; arrx[2]=3; arrx[3]=1; for (var i = 0; i < arrx.length; i++) { document.getElemen
var arrx=new Array();
arrx[0]=4;
arrx[1]=5;
arrx[2]=3;
arrx[3]=1;
for (var i = 0; i < arrx.length; i++) {
document.getElementsByName('cal')[arrx[i]].checked = true;
}
var arrx=new Array();
arrx[0]=4;
arrx[1]=5;
arrx[2]=3;
arrx[3]=1;
对于(变量i=0;i
不需要jQueryvar arrx=new Array();
arrx[0]=4;
arrx[1]=5;
arrx[2]=3;
arrx[3]=1;
var calArray=document.getElementsByName(“cal”);
对于(变量i=0;i
如果您坚持使用jQuery:
var arrx=new Array();
arrx[0]=4;
arrx[1]=5;
arrx[2]=3;
arrx[3]=1;
var i = 0;
$('[name=cal]').each(function() {
if ($.inArray(i, arrx) != -1) {
$(this).prop('checked',true);
}
i++;
});
如果您愿意使用jQuery,它可以很容易地根据输入的名称进行操作: jQuery('[name=“cal”]')。每个(函数(i){jQuery(this.attr('checked','checked');}) 但是,如果您的目标不一定要选择所有选项,您可以使用以下方法: jQuery('[name$=“_c”]')。每个(函数(i){jQuery(this.attr('checked','checked');}) 它只检查名称末尾带有_c的输入
使用
.setAttribute('checked',true)
比使用更好。checked=true
@j08691 DOM对象有一个抽象层,基本上用于隐藏内部。使用.checked
您使用的是一个公开值,该值可能在将来更改。然而,这里的setter是抽象层,允许浏览器在将来改进/更改对象而不破坏代码。
var arrx=new Array();
arrx[0]=4;
arrx[1]=5;
arrx[2]=3;
arrx[3]=1;
var i = 0;
$('[name=cal]').each(function() {
if ($.inArray(i, arrx) != -1) {
$(this).prop('checked',true);
}
i++;
});