如何在JQuery Sortable上执行重置

Hug*_*Bob 9 jquery jquery-ui-sortable

我正在使用JQuery Sortable.我想知道在经过多次尝试后,是否有可能将可排序控件恢复到原始状态,类似于表单重置.'cancel'选项似乎只影响最后一次排序尝试,而不是所有这些.

小智 21

我个人喜欢这样做:

$("#sortable").sortable({config...});
var cache = $("#sortable").html();
Run Code Online (Sandbox Code Playgroud)

重置时

$("#sortable").html(cache).sortable("refresh");
Run Code Online (Sandbox Code Playgroud)

我尝试使用.clone()和.children()甚至$("#sortable>*),但是找到缓存.html()的最佳选择.

在我的情况下,我有两个连接列表.一个包含用户可以排序或删除的当前项目以及用户可以从中获取以添加到"当前项目"列表的另一个可用项目列表.我需要一种方法将所有东西重置为原始状态.以上工作很棒.


use*_*654 3

存储对原始元素顺序的引用,然后使用它来重新排序。

var sortableElements = $("#sortable div");
$("#sortable").sortable();
Run Code Online (Sandbox Code Playgroud)

现在,当您想要恢复原始排序顺序时,只需将 div 附加到 #sortable 元素即可。

$("#sortable").append(sortableElements);
Run Code Online (Sandbox Code Playgroud)