jQuery可排序的问题

时间:2014-05-21 18:20:18

标签: jquery jquery-ui-sortable

我有项目列表和jQuery Sortable插件。

点击激活排序按钮后,我执行:

$( ".sortable" ).sortable();
$( ".sortable" ).sortable( "option", "disabled", false );

点击保存新订单按钮后,我执行:

$( ".sortable" ).sortable( "option", "disabled", true );
// Some Ajax to save actual positions

点击重置订单后,我执行:

$( ".sortable" ).sortable("cancel");
$( ".sortable" ).sortable( "option", "disabled", true );

继承人的问题:

步骤1:我激活排序,进行一些排序并保存。一切都很好。

步骤2:现在,我再次点击按钮激活排序并再次排序。现在我改变主意,点击重置排序按钮。但排序位置很久以前就在第1步之前恢复:(

我需要在步骤1中保存后保存已排序项目的位置,因此在步骤2中点击重置按钮后,这些项目必须在步骤1之后进入状态。

非常感谢!

P.S。抱歉我的英语不好。

1 个答案:

答案 0 :(得分:0)

尝试使用本地存储或会话存储 - 取决于您想要什么。 你有很多或只有一个用.sortable类注释的对象吗? 如果您只有一个,那么有一个简单的解决方案 - 只需存储所有孩子。

localStorage.setItem('storedChildren', JSON.stringify($(".sortable").children());

然后检索它们,清除$(" .sortable")并将你的物品放在那里。 您的重置将包括放置以前存储的对象。

P.S。您可能应该升级此代码,我对Jquery没有多少经验。

相关问题