這是我的HTML的外觀,檢查屬性的所有元素,並修改另一個元素
<tr id="group-1-11">
<tr class="child-of-group-1-11 " selected-group="1" >
<tr id="group-1-12" class="child-of-group-1-11" parent-id="group-1-11" selected-group="1">
<tr class="child-of-group-1-12" parent-id="group-1-12" selected-group="1">
<tr class="child-of-group-1-12" parent-id="group-1-12" selected-group="1">
<tr class="child-of-group-1-11" selected-group="1" >
<tr id="group-1-85" class="child-of-group-1-11" parent-id="group-1-11" >
<tr class="child-of-group-1-85" selected-group="1" style="display: none;">
<tr id="group-1-355" class="child-of-group-1-85" parent-id="group-1-85" selected-group="1">
<tr id="group-1-2" class="child-of-group-1-11 parent " parent-id="group-1-11">
什麼現在是我的問題是,我需要檢查是否帶班兒童的-ID的元素有屬性selected-group =「1」,如果所有的孩子的id有屬性,然後添加新的屬性(選中,真)元素與該特定的ID。
// I have an array of ids
// var uniqueParentArray = ['group-1-11', 'group-1-12', 'group-1-85',...];
$.each(uniqueParentArray, function(index, parentId) {
var allSelected = $('.child-of-'+parentId).each(function(){
var selectedGroup = $(this).attr('selected-group');
if(selectedGroup != '1')
return false;
return true;
});
if(allSelected) {
$('#'+parentId).attr("checked", true);
}
});
由最終意味着我的結果應該是這樣的:
<tr id="group-1-12" class="child-of-group-1-11" parent-id="group-1-11" selected-group="1" checked="true">
<tr id="group-1-85" class="child-of-group-1-11" parent-id="group-1-11" checked="true">
但與元素id = "group-1-11"
不應該有屬性checked = "true"
我希望背景是清楚的。我可能在腳本中有一個錯誤,因此結果輸出不像預期的那樣。請幫我修復這個錯誤,我期待allSelected
是布爾值,但我可能不太熟悉這個方法。
嗯!爲什麼我沒有想到它,謝謝@jackwanders。但這確實需要不必要的循環,再次感謝你,但我想我還會等待其他解決方案。 – 2012-08-07 16:01:27