チェックボックスをオンにするには、ここで説明するように、チェックした属性を追加するだけです。
以下は1つの解決策です。まず、IDが高速であるため、毎回検索するのではなく、IDを保存する必要があります。次に、$。inArray関数を使用して、チェックする必要のある数値を含む配列にカテゴリが含まれているかどうかを判断しました。最後に、3進数を使用してchecked属性を追加しました。
var numberArray = [2, 54, 8, 10];
entries.each(function() {
if($(this).find('parentcategoryid').text() == 0) {
var categoryId = $(this).find('categoryid').text();
var categoryInArray = $.inArray(categoryId, numberArray) !== -1;
xmlArr += '<span><input type="checkbox" data-mini="true" name="category'+categoryId+'" id="checkbox'+categoryId+'" class="techAreasCheckBox" style="margin-top: 5px;"' + categoryInArray ? ' checked="checked" ' : '""/><label class="techAreasLabel">'+$(this).find('categoryname').text()+'</label></span><br/>';
}
}); // Entries.Each function
または、別のifステートメントを使用することもできます。
entries.each(function() {
if($(this).find('parentcategoryid').text() == 0) {
var categoryId = $(this).find('categoryid').text();
var categoryInArray = $.inArray(categoryId, numberArray) !== -1;
if(categoryInArray) {
xmlArr += '<span><input type="checkbox" data-mini="true" name="category'+categoryId+'" id="checkbox'+categoryId+'" class="techAreasCheckBox" style="margin-top: 5px;" checked="checked"/><label class="techAreasLabel">'+$(this).find('categoryname').text()+'</label></span><br/>';
} else {
xmlArr += '<span><input type="checkbox" data-mini="true" name="category'+categoryId+'" id="checkbox'+categoryId+'" class="techAreasCheckBox" style="margin-top: 5px;"/><label class="techAreasLabel">'+$(this).find('categoryname').text()+'</label></span><br/>';
}
}
}); // Entries.Each function