javascript - jQuery Sortable 防止用户将子项目移动到父项目

标签 javascript jquery jquery-ui-sortable

我有这个 HTML 列表:

<ol class="sortable subcategory_item">
    <li data-id="102">A</li>
    <li data-id="111">B</li>
    <li data-id="1712">GROUP A
        <ol class="group_items">
            <li data-id="105">GROUP MEMBER 1</li>
            <li data-id="108">GROUP MEMBER 2</li>
            <li data-id="109">GROUP MEMBER 3</li>
        </ol>
    </li>
    <li data-id="110">C</li>
    <li data-id="113">D</li>
</ol>

问题是我能够移动 GROUP A 下的项目给他们的 parent 。

如何防止GROUP MEMBER 1 , GROUP MEMBER 2GROUP MEMBER 3 (或 <ol class="group_items"> 内的项目移至 GROUP A 上方?

我目前正在使用jquery-sortable plugin但如果我必须切换使用另一个插件,我也没关系。

最佳答案

您可以简单地使用 jQuery UI sortable,它默认按照您想要的方式运行:

$('.sortable,.group_items').sortable();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<ol class="sortable subcategory_item">
  <li data-id="102">A</li>
  <li data-id="111">B</li>
  <li data-id="1712">GROUP A
    <ol class="group_items">
      <li data-id="105">GROUP MEMBER 1</li>
      <li data-id="108">GROUP MEMBER 2</li>
      <li data-id="109">GROUP MEMBER 3</li>
    </ol>
  </li>
  <li data-id="110">C</li>
  <li data-id="113">D</li>
</ol>

关于javascript - jQuery Sortable 防止用户将子项目移动到父项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37296280/

相关文章:

javascript - 更改 Twitter Feed 中的 Twitter Logo

javascript - 将类的 div 调整为最大

javascript - 如何使用 JavaScript 和 jQuery 覆盖 HTML tbody 表中每一行第一列的值?

javascript - jQuery 查找图像的高度,即使它没有在 HTML 中设置

javascript - jquery 将元素从可排序列表拖放到另一个列表中仅用于分配(而不是移动)

javascript - 从列表中选择项目并使用 Javascript AngularJS 将其发送回服务器

javascript - Animate.css 和 Typed.js - 隐藏类型直到动画结束。

javascript - 从特定点缩放 div

IE中jquery多级列表问题

javascript - 增加Target Box并从jquery-sortable获取Image信息