禁止嵌套排序混用

Forbid nested sortable to mix

本文关键字:排序 嵌套 禁止      更新时间:2023-09-26

我有一个具有特殊ID的父div,我要对其子div进行排序。这些子节点也有可排序的子节点,这些子节点也有可排序的项。所以我的可排序嵌套性分为三层

<div id="sortableGrandParent">
  <div id="sortableParent1">SomeTitle1
    <div id="sortableChild11">I want these to only</div>
    <div id="sortableChild21">sort between themselves</div>
  </div>
  <div id="sortableParent2">SomeTitle2
    <div id="sortableChild21">And not jump to here</div>
  </div>
</div>

我用

开头
  jQuery(function () {
          jQuery("#sortableGrandParent, #sortableParent1, #sortableParent2").sortable({ ...

它起作用了。我可以对孩子和父母进行排序,我甚至设法找到了一种方法,将他们分别保存在DB中。什么是问题是我有sortableParent2的孩子与sortableParent1的孩子一起去,即使我不能保存到DB作为id不匹配,它的计数器用户友好,如果可能的话,我希望每个DIV的孩子之间只排序。

我很确定我需要使用connectWith以某种方式,并得到一些混合N'匹配的情况下,但我不确定如何?

正如评论中提到的:

这正是您使用itemsconnectWith的默认值得到的行为

jQuery("#sortableGrandParent, #sortableParent1, #sortableParent2").sortable({
    items: ">*",
    connectWith: false
});

小提琴:http://jsfiddle.net/tnx8jrqs/