我有一个通过ajax填充的列表。这个列表我可以通过ajax添加和删除项目,也可以对它们进行排序。我有两个问题。
第一个在这里,它仍然没有解决:https://stackoverflow.com/questions/6370213/jquery-dynamic-dragn-drop-doesnt-update-order(在对列表进行排序后,来自数据库的项目数量在我刷新之前不会更新)
第二个更糟糕。通过ajax更新列表中的内容后(假设我添加了一个新项),可重排的函数停止工作,直到我重新加载页面。似乎.live不适用于可排序,我对这个想法不合适。我将添加一些代码:
我的列表是这样的:
<ul id="listaruta">
<li> ... </li>
</ul>
我的用于排序项目的脚本:
$(function() {
$("ul#listaruta").sortable({
opacity: 0.6,
cursor: 'move',
update: function() {
var order = $(this).sortable("serialize") + '&action=updateRecordsListings';
$.post("/plugins/drag/updateDB.php", order);
}
});
});
我将它用于排序功能:http://www.webresourcesdepot.com/wp-content/uploads/file/jquerydragdrop/
答案 0 :(得分:7)
经过搜索后,我发现这是我的答案:jQuery live and sortable
这是我添加到我的代码中以使其工作的原因:
$(document).ajaxSuccess(function() {
$("ul#listaruta").sortable({
opacity: 0.6,
cursor: 'move',
update: function() {
var order = $(this).sortable("serialize") + '&action=updateRecordsListings';
$.post("/plugins/drag/updateDB.php", order);
}
});
});