В следующем jsFiddle состоит из фазы, недели, дня.
Идея состоит в том, что:
1) Фаза может перемещаться выше или ниже других фаз
2) Недели могут перемещаться только между фазами (если есть вложенные дни, они будут перемещаться вместе сродительская неделя)
3) Дни могут быть перенесены в другие недели
Поскольку у меня есть это прямо сейчас, вы можете переместить Неделю, но дни после нее не следуют и могут стать осиротевшими (плохими).Другая проблема, с которой я сталкиваюсь, - это если вы перемещаете День 1 в другую неделю, у которой также есть День 1, что-то ломается, второй День 1 больше не может быть перемещен, он перемещает всю группировку Фазы (дубликаты в порядке).
Я мог бы действительно помочь с настройкой параметров сортировки.
$( "#listContainer ul" ).sortable(
{
/* connectWith: ".group", */
placeholder: "itemPlaceholder",
cursor: 'move'
}
);
$('.group').sortable({
items: "> div.listItem",
// connectWith: ".srtable, .group",
connectWith: false,
receive: function( event, ui ) {
//alert('receive');
//console.log(ui);
//console.log(ui.item)
//console.log($(ui.item).attr('class'))
if ($(ui.item).hasClass('phaseTitle')) {
$(ui.sender).sortable("cancel");
alert('Sorry! Phases cannot be nested');
}
}
});
$('.days').sortable({
connectWith: ".group"
})