【发布时间】:2012-01-24 21:36:51
【问题描述】:
我还没有看到任何选择性排序的示例:
[A:一份主名单]
[B:一个子列表]
[C: 另一个子列表]
条件:
- B 和 C 可以转移到 A
- A 只能将来自 B 的元素传递给 B(同样适用于 C)
- B 和 C 不能相互转移
示例结构:
<ul class="A"></ul>
<ul class="B">
<li class="child-B" />
<li class="child-B" />
<li class="child-B" />
</ul>
<ul class="C">
<li class="child-C" />
<li class="child-C" />
<li class="child-C" />
</ul>
我尝试将 sortable 应用于列表并尝试在之后动态更改 connectWith(它们都能够连接到 A),但没有运气。这是我的尝试之一 (jsFiddle)。我还尝试将 '.master,.sub' 作为初始 connectWith,但它允许交叉共享。
我认为第二个循环是更新 sortable 的 connectWith,所以我被卡住了。有什么想法吗?
【问题讨论】:
-
如果有办法在
receive事件中拒绝项目,那就太好了,但似乎没有内置的方法可以这样做。 -
@James:这不是取消的作用吗?
-
@JeffB 我读到的所有内容都说它在接收中不起作用。猜猜我应该测试它,因为从 Goran 的回答看来,它实际上确实按我想要的方式工作。动画很丑,但很实用。
-
@JamesMontagne 我同意。我阅读了文档并听到了一些相同的内容,也许存在浏览器错误,但到目前为止,Goran 的回答对我有用。这就是为什么我最初尝试执行 connectWith 而不是取消,如果列表不正确,它将永远不会启动。
标签: jquery jquery-ui jquery-ui-sortable