我之前发布过一个问题See Here,几乎有一个我想发布的解决方案。
我已经设法通过使用以下方法来实现这一目标:
$(".todoList").sortable({
update: function (event, ui) {
if (this === ui.item.parent()[0]) {
var numLists = $("ul.menu").length;
for (var i = 1; i <= numLists; i++) {
$.post("updateDB.php", {
pages: $("#menu-pages" + i).sortable('toArray'),
listid: i
});
}
}
},
connectWith: ".connectedSortable"
});
但是,使用此解决方案,如果我有x个列表,它将查询DB x次数。在我发布答案之前,我想知道是否可以为每个'i'和$ .post创建一个数组的2D数组。
提前致谢。
答案 0 :(得分:1)
如果我理解你,你可以尝试这样的事情:
$(".todoList").sortable({
update: function (event, ui) {
if (this === ui.item.parent()[0]) {
var numLists = $("ul.menu").length;
var pages = [];
for (var i = 1; i <= numLists; i++) {
//here is the edit
pages.push($("#menu-pages" + i).sortable('toArray'));
}
$.post("updateDB.php", {
pages: pages
});
}
},
connectWith: ".connectedSortable"
});
现在您需要更改updateDB.php
,因为使用此版本代码传递的参数与以前不同。