JQuery Draggable + Sortable:如何判断项目是不是实际添加到我的可排序列表中?

Posted

技术标签:

【中文标题】JQuery Draggable + Sortable:如何判断项目是不是实际添加到我的可排序列表中?【英文标题】:JQuery Draggable + Sortable: How to tell if item was actually added to my sortable list?JQuery Draggable + Sortable:如何判断项目是否实际添加到我的可排序列表中? 【发布时间】:2011-03-16 12:50:25 【问题描述】:

好的,我可能在这里遗漏了一些明显的东西,但我的搜索并没有找到任何有用的东西。我已经设置了一个可排序列表并将一个可拖动的“调色板列表”连接到它,如下所述:http://jqueryui.com/demos/draggable/#sortable

我可以将项目从我的可拖动列表中拖放到我的可排序列表中。效果很好。

我需要在这些项目之一被放置到可排序时触发一个函数。

我已经在可拖动项目上尝试了“停止”钩子,但无论项目被放置在哪里都会触发(例如,如果触发了“revert: 'invalid'”,它就会触发)。我在任何地方都找不到任何属性来告诉我拖动是否成功。

我尝试将可排序对象视为“可放置”并绑定到“放置”,但它甚至没有被调用。

感谢您的帮助!

【问题讨论】:

【参考方案1】:

找到了!

Sortable 有一个称为receive 的事件。 http://api.jqueryui.com/sortable/#event-receive

在过去几个小时的挖掘中我是如何错过这个的,我无法理解。

【讨论】:

即使您没有丢弃该项目,也会调用接收函数。然后,当您在可排序列表中拖放一个项目时,将使用不正确的原始拖动项目调用接收方法。所以:将项目拖到可排序列表中,但不要放下它。把物品放回去。 (不调用接收)现在在可排序列表中拖动一个项目并调用接收。

以上是关于JQuery Draggable + Sortable:如何判断项目是不是实际添加到我的可排序列表中?的主要内容,如果未能解决你的问题,请参考以下文章

获取 JQuery ui.draggable 的属性

jQuery 令人不快的 Draggable, Resizable 交互

jquery如何通过'draggable'和'droppable'来排序't项目“互相吃”?

jQuery Draggable,将位置转换为百分比

jQuery Draggable 包含可见窗口?

jQuery(...)。draggable不是一个函数