Jquery 以编程方式填充多选复选框

Jquery 以编程方式填充多选复选框,jquery,jquery-mobile,Jquery,Jquery Mobile,我有下面的多选复选框代码。当用户访问此页面时,我需要获取数据 并根据它填充复选框。我以数组的形式获取数据 <div data-role="fieldcontain" id="alot"> <fieldset data-role="controlgroup"> <div style="font-weight: bold" id="checkBoxes">Business Units:</div> &

我有下面的多选复选框代码。当用户访问此页面时,我需要获取数据 并根据它填充复选框。我以数组的形式获取数据

    <div data-role="fieldcontain" id="alot">
      <fieldset data-role="controlgroup">

       <div style="font-weight: bold" id="checkBoxes">Business Units:</div>

       <input type="checkbox" value="All" class="checkBoxClass" id="ckbCheckAll" />
       <label for="ckbCheckAll">All</label> 

       <input type="checkbox" value="29" class="checkBoxClass" id="Checkbox1" />
       <label for="Checkbox1">XYZ</label> 

       <input type="checkbox" value="30" class="checkBoxClass" id="Checkbox2" />
       <label for="Checkbox2">ABC</label>

     </fieldset>
   </div>
数组包含类似于[29,30]的值

我遗漏了什么吗?

您可以根据数组中是否找到每个
的值来检查:

var arr = ['All', 30]

$('#alot').find('input:checkbox').prop('checked', function(){
    var value = Number(this.value) || this.value;
    return $.inArray(value, arr) > -1; 
}).checkboxradio('refresh');

.val()
仅适用于表单元素(
输入
s、
文本区
s、
选择
s、
选项
s),不适用于
div
s…什么是
。checkboxradio(“刷新”)
?您的插件?谢谢乔治。现在可以使用了!!
var arr = ['All', 30]

$('#alot').find('input:checkbox').prop('checked', function(){
    var value = Number(this.value) || this.value;
    return $.inArray(value, arr) > -1; 
}).checkboxradio('refresh');