Я использую эти функции для удаления / отображения всех элементов в группе
function plannerCloseGroup(groupID){
// retrieve all items having a property group with value groupID
var itemsFiltered = items.get({
filter: function (item) {
return (item.group == groupID);
}
});
closedItems[groupID] = itemsFiltered;
items.remove(itemsFiltered);
$("#plannerMinus_" + groupID).addClass("hidden");
$("#plannerMinus_" + groupID).removeClass("display");
$("#plannerPlus_" + groupID).removeClass("hidden");
$("#plannerPlus_"+ groupID).addClass("display");
}
function plannerOpenGroup(groupID){
items.update(closedItems[groupID]);
$("#plannerMinus_" + groupID).addClass("display");
$("#plannerMinus_" + groupID).removeClass("hidden");
$("#plannerPlus_" + groupID).removeClass("display");
$("#plannerPlus_" + groupID).addClass("hidden");
delete closedItems[groupID];
}
closedItems - это глобальный массив
plannerMinus og plannerPlus - значки рядом с именем группы
Когда я определяю свои группы, у меня есть этот код в контенте, где $ employeeID также является моим groupID
'<span id="plannerPlus_'.$employeeID.'" class="hidden"><img src="images/planner-plus-grey.gif" width=10 height=10 onclick="plannerOpenGroup('.$employeeID.')"> </span><span id="plannerMinus_'.$employeeID.'" class="display"><img src="images/planner-minus.gif" width=10 height=10 onclick="plannerCloseGroup('.$employeeID.')"> </span>'
Тогда это выглядит так