【问题标题】:sortable and draggable - cancel if item is already in sortable可排序和可拖动 - 如果项目已经处于可排序状态,则取消
【发布时间】:2010-08-17 15:27:25
【问题描述】:

有点麻烦……

我有一个可以拖放到可排序列表中的可拖动元素。理想情况下,如果可排序已包含具有匹配的可拖动类名称的元素,我想防止可拖动事件在可排序中创建占位符。

没有任何运气,因此在将可拖动对象放入可排序列表后,使用以下方法删除它:

beforeStop: function(event,ui)
            {
                var $this = ui.item;
                var person = $this.attr('class').replace(/(.)*a\-(\d*)(.*)/i,'$2');
                if ($this.siblings('.a-'+person).length != 0)
                {
                    $this.remove()
                }

不幸的是,这使得初始可拖动元素不再可拖动(我可能会将其移动到页面中的另一个可排序元素中,所以不能这样做!)并且不确定 beforeStop 选项是否最适合此。

非常感谢您提供的任何帮助。

【问题讨论】:

    标签: jquery jquery-ui jquery-ui-sortable


    【解决方案1】:

    您可以使用“接受”选项来修改可放置列表将接受哪些可拖动元素:

    http://jqueryui.com/demos/droppable/#accepted-elements

    【讨论】:

    • 这里不是真正的问题 - 更多的是我可以在可拖动开始时指定 connectToSortable 选项,或者能够通过破坏初始可拖动对象来删除插入到可排序列表中的元素(如果我可以解决这个问题可以再次启用它)...
    • 我不明白为什么这是公认的答案 - 特别是因为问题是关于可排序的,而不是可丢弃的。
    猜你喜欢
    • 2011-07-05
    • 2017-11-17
    • 2012-06-23
    • 1970-01-01
    • 2012-02-03
    • 1970-01-01
    • 2012-05-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多