答案 0 :(得分:1)
实际上,我没有和你一样的名单,我在里面看到你可以有ul和li!
> <li class="n-2">Academic
> <ul>
> <li class="n-5">Staff</li>
> <li class="n-6">Courses</li>
> </ul>
> </li>
我只有:
<ul id="sortable" class="connectedSortable">
<li id='1' class="ui-state-default"><span> stuff ...</span></li>
<li id='3' class="ui-state-default"><span> stuff ...</span></li>
<ul id="sortable" class="connectedSortable">
<li id='1' class="ui-state-default"><span> stuff ...</span></li>
<ul id="sortable" class="connectedSortable">
<li id='4' class="ui-state-default"><span> stuff ...</span></li>
</ul>
</ul>
<li id='2' class="ui-state-default"><span> stuff ...</span></li>
</ul>
在我的jquery函数中我已经开始了这个:
start: function(event,ui)
{
$(this).find('li').next().not('ul').after('<ul id="sortable" class="connectedSortable"><li class="hiddenli" style="height:0.1em;"></li></ul>');
$(this).sortable('refresh');
}
所以我管理你的版本以使用我的列表^^,但是我得到了一个可放置的区域,在我当前的元素之后拖动,所以我可以把我的李作为孩子,但因为父母是我的元素拖动,我不想删除
对于排序的更新我试过并且使用序列化失败了不知道如何得到问题,它是孩子并正确订购我不知道我的
答案 1 :(得分:0)
如果有人有兴趣,我已经完成了一项工作....
而不是我使用的开始和结束的过期和结束选项。
start: function(event,ui)
{
$(this).find('li').not(':has(ul)').append('<ul><li></li></ul>');
$(this).sortable('refresh');
} ,
stop: function(event,ui)
{
$(this).find('li:empty').remove();
$(this).find('ul:empty').remove();
$(this).sortable('refresh')
}
如果有人有更好的解决方案,请告诉我们......