我有一些JQuery代码可以浏览输入复选框列表并检查那些没有checked
属性的
$('td input:checkbox.checkbox-excluded:not(:checked)', table).prop('checked', true).change();
我想添加第二个测试,这样我就不会检查那些有兄弟姐妹的人来检查
每个表格行都有两个复选框
> <td class=" downloaded"><input type="checkbox"
> class="checkbox-downloaded"></td><td class=" excluded"><input
> type="checkbox" class="checkbox-excluded"></td>
如何仅检查未检查的checkbox-excluded
元素,并且还未检查其兄弟checkbox-downloaded
?
答案 0 :(得分:0)
您可以使用.each()
,然后使用.siblings()
。
此外,如果您根据层次结构调整$('td')
选择器的范围以提高性能,那会更好。
$('td').each(function(i0,td){
$(td).find('>input[type="checkbox"].checkbox-excluded:not(:checked)').each(function(i1,checkbox){
if($(td).siblings().find('>input[type="checkbox"].checkbox-downloaded:not(:checked)').length>0)
{
$(checkbox).prop('checked', true).change();
}
});
});