如果值在数组中,请选中复选框

时间:2013-03-13 06:57:25

标签: javascript jquery checkbox

var ds = $("#recDay").val().split(/ +/); 
var weekArray = [];
for (var i=0; i<ds.length; i++){
    weekArray = ds[i];
} // i =0 , weekArray = Sunday; i=1, weekArray = tuesday; i=2, weekArray = Wednesday

<table>
<tr>
<td width="3%"></td>
<td><input type="checkbox" name="weeklyDay" id="sunday" value="sunday"> Sunday</td>      
<td><input type="checkbox" name="Day" id="monday" value="monday"> Monday</td>                                                                               
<td><input type="checkbox" name="Day" id="tuesday" value="tuesday"> Tuesday</td>                                                                                
<td><input type="checkbox" name="Day" id="wednesday" value="wednesday">Wednesday</td>                                                                              
</tr>                                                                            
<tr>                                                                                
<td width="3%"></td>                                                                                
<td><input type="checkbox" name="Day" id="thursday" value="thursday" > Thursday</td>                                                                                   
<td><input type="checkbox" name="Day" id="friday" value="friday"> Friday</td>                                                                                 
<td><input type="checkbox" name="Day" id="saturday" value="saturday"> Saturday</td>                                                                         
</tr>                                                                       
</table>

如何仅检查weekArray中的复选框? 我试过的代码是

$('select[name="Day"] option').filter(function(){
         if(weekArray.indexOf((this).text(), 0) != -1);
         return $(this);
    }).prop("checked", true);

但这不起作用。 任何帮助将不胜感激

4 个答案:

答案 0 :(得分:1)

您正在使用select选择器checkbox ???? ..

 $('#divID input:checkbox').each(function(){
     if($.inArray($(this).val(), weekArray) != -1){
       $(this).prop("checked", true);
    }
});

答案 1 :(得分:1)

你可以这样做,

<强> Live Demo

var weekArray = ["saturday","monday","tuesday","friday" ];
$('.weekdays').filter(function () {    
    if (weekArray.indexOf(this.id) != -1)
          return $(this).closest('td').find(':checkbox');
}).prop("checked", true);

答案 2 :(得分:0)

if(in_array(document.getElementById("CheckBoxId"), $yourArray)) { CheckBox.Checked }

答案 3 :(得分:0)

for (var i=0; i<ds.length; i++){
    weekArray = ds[i];
}

$("form input:checkbox").each(function(){
if(jQuery.inArray($(this).attr('id'), weekArray )!=-1)
$(this).prop('checked', true);
});
相关问题