我正在使用可排序小部件来重新排序项目列表。将项目拖到新位置后,我开始向服务器发送 AJAX 表单以保存新订单。如果我从服务器收到错误消息,我该如何撤消排序(例如,将拖动项返回到列表中的原始位置)?
基本上,如果服务器确认更改已保存,我只希望重新排序“坚持”。
最佳答案
我很确定 sortable 没有任何 undo-last-drop 功能——但这是个好主意!
与此同时,我认为最好的办法是写一些 start
存储排序,然后在失败时调用恢复函数。 IE。像这样:
$("list-container").sortable({
start: function () {
/* stash current order of sorted elements in an array */
},
update: function () {
/* ajax call; on failure, re-order based on the stashed order */
}
});
不过,很想知道其他人是否有更好的答案。
关于jquery-ui - jQuery UI 可排序 : Revert changes if update callback makes an AJAX call that fails?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2700130/