如何使用jQuery.ui.sortable和jquery.ui.swappable交换elem

时间:2013-11-11 10:59:41

标签: jquery django jquery-ui jquery-ui-sortable swap

我是JQuery的初学者。我的问题是我想插入拖动的项目,但有时我想交换两个元素。 我不知道该如何解决。

1 个答案:

答案 0 :(得分:2)

对于交换,您可以执行以下操作:

您必须将现有订单转换为数组,首先定义一个:

var prevPagesOrder = [];

然后在丢弃元素(由sortable的stop停止)

后检查数组
$( "#sortable" ).sortable({
    start: function(event, ui) {
       prevPagesOrder = $(this).sortable('toArray');
    },
    stop: function(event, ui) {
        var currentOrder = $(this).sortable('toArray');
        var move_id = ui.item[0].id;
        var swap_index = currentOrder.indexOf(move_id);
        var swapped_id = prevPagesOrder[swap_index]

        // do stuff for swapping
        // move_id = object moved
        // swapped_id = object swapped with
        }
        return true;
    }
}).disableSelection();

希望这会有所帮助。如果将来你向人们展示你到目前为止所尝试过的东西,那就太好了。