【问题标题】:jquery sortable w/ connectWith: tell which update event is which?jquery sortable w/connectWith:告诉哪个更新事件是哪个?
【发布时间】:2013-08-08 23:58:23
【问题描述】:

我有两个使用 jQueryUI 的可排序模块的列表。我有一个附加到它们的更新事件。我注意到,当我将一个元素从一个列表移动到另一个列表时,update 函数会被调用两次。有没有办法判断哪个事件来自删除了一个元素的列表,哪个是接收该元素的列表?

我知道receiveremove 函数,但我想使用更新来处理元素在列表中移动并且不更改父元素的情况。我怎么知道哪个事件是哪个事件?

【问题讨论】:

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


    【解决方案1】:

    来自 api 文档:http://api.jqueryui.com/sortable/#event-update

    您可能必须将ui.sender 与当前可排序的对象进行比较,并确定它是否来自不同的列表,然后采取相应的行动。您还可以在事件中使用this 来获取刚刚在自身内部排序的可排序对象。

    update:function(even, ui){
       var sortable = ui.sender;
    
       var htmlElement = this;
    
    }
    

    【讨论】:

    • 这种方法的问题是,对于删除了一个元素的列表以及如果您只是在同一个列表中移动了两个元素,则发送者为 null。
    • @GSto 更新了我的答案,this 将是正在执行操作的可排序对象。因此,如果 ui.sendernull,您就会知道这是在同一个列表中移动的项目。
    猜你喜欢
    • 1970-01-01
    • 2011-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-21
    • 2013-10-10
    • 1970-01-01
    • 2015-12-29
    相关资源
    最近更新 更多