2009-07-21 102 views
0

我有其中OL> LI列表的DIV,这些列表是各自可排序的,我将它们连接在一起,以便用户可以将LI和LI从一个列表移动到另一个列表..似乎是一件常见的事情。可排序的项目从一个列表移动到另一个,丢失句柄和排序能力

当可排序列表接收到一个项目时,该项目失去其“排序能力”或至少该句柄无法处理它。

下面是一些代码来告诉你如何设置我的排序列表:

$(".sortable").sortable({ 
    connectWith: ".sortable", 
    revert: true, 
    opacity: 0.5, 
    handle: $('.sample_view_image span img'), 
    cursor: 'move', 
    receive: function(event, ui) { 
    $(ui.item).formatSampleToGallery(); 
    $(ui.item).sortable("refresh"); //thought this would reconnect everything 
    } 
}); 

回答

0

首先,我引用$(ui.item),这是不可排序开始说起。咄。其次,当我使用正确的选择器$(ui.item).parent()时,“刷新”仍然没有正确地重新建立“句柄”。看起来像“刷新”应该照顾这个对我来说,我滥用它?!

我不得不使用下面的代码,使其正常工作,这感觉有点脏...:

$(".sortable").sortable({ 
    connectWith: ".sortable", 
    revert: true, 
    opacity: 0.5, 
    handle: $('.sample_view_image span img'), 
    cursor: 'move', 
    receive: function(event, ui) { 
    $(ui.item).formatSampleToGallery(); 

    $(ui.item).parent().sortable({ 
     connectWith: ".sortable", 
     revert: true, 
     opacity: 0.5, 
     handle: $('.sample_view_image span img'), 
     cursor: 'move' 
    }); 
    } 
});