0

我有一组复选框和一个数组,其中包含应选择哪些复选框的索引。我正在尝试遍历数组和其中的每个索引。我制作了一个示例 jsFiddle,让你们了解我正在尝试做什么。如果这让事情变得更容易,我也有 JQuery 库。http://jsfiddle.net/7EetA/1/

4

4 回答 4

1

试试这个:

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;
}
​

不需要 jQuery!jsFiddle 示例

于 2012-07-12T19:42:08.460 回答
1
var arrx=new Array();
arrx[0]=4;       
arrx[1]=5;
arrx[2]=3;
arrx[3]=1;

var calArray = document.getElementsByName("cal");
for (var i = 0; i < arrx.length; i++) {
    calArray[arrx[i]].checked = true;
}
于 2012-07-12T19:43:47.387 回答
0

如果你坚持使用 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++;
});

工作示例

于 2012-07-12T19:51:45.550 回答
0

如果你愿意使用 jQuery,它可以根据输入的名称很容易地做到这一点:

jQuery('[name="cal"]').each(function(i){jQuery(this).attr('checked', 'checked');});

但是,如果您的目标不一定是选择所有这些,则可以使用以下内容:

jQuery('[name$="_c"]').each(function(i){jQuery(this).attr('checked', 'checked');});

它只检查名称末尾带有 _c 的输入。

http://jsfiddle.net/7EetA/9/

于 2012-07-12T21:25:49.177 回答