У меня есть сортируемый список. Пользователи могут добавлять или удалять элементы из списка. Они также могут редактировать список через Jeditable. Проблема в том, что при добавлении нового элемента метод, который я использую для сохранения позиции элемента в списке, кажется, не распознает перемещение нового элемента.
вот что у меня есть,
<script type="text/javascript">
$(document).ready(function(){
$(function() {
$("#contentLeft ul").sortable({ opacity: 0.6, cursor: 'move', update: function() {
var order = $(this).sortable("serialize") + '&action=updateRecordsListings';
$.post("updateDB.php", order, function(theResponse){
$("#contentRight").html(theResponse);
});
}
});
});
});
$(document).ready(function(){
$(".edit").editable("http://servername.com/rpc.php", {
submitdata : {method: "update_item"},
indicator : "<img src='images/indicator.gif'>",
tooltip : "Click to edit...",
style : "inherit",
onblur : "submit"
});
});
function delete_item(item){
$.post("rpc.php", { id: item, method: "delete_item" },
function(data) {
$(data).hide();
});
}
function add_item(){
$.post("rpc.php",{method:"add_item"},
function(data) {
$("#new_items").append(data)
$("#contentLeft ul").sortable( "refresh" )
$(".edit").editable("http://servername.com/rpc.php", { /*otherwise won't work on new element*/
submitdata : {method: "update_item"},
indicator : "<img src='images/indicator.gif'>",
tooltip : "Click to edit...",
style : "inherit",
onblur : "submit"
});
});
}
</script>
когда я добавляю элемент, редактирую текст, а затем сортирую элемент, массив которого возвращается:
Array
(
[0] => 99
[1] => 23
[2] => 15
[3] => 96
[4] => 73
[5] => 75
)
99 - новый предмет. Независимо от того, где я его разместил, он всегда заканчивается на 0. Все остальные элементы переупорядочиваются правильно. Если я обновлю страницу, то все будет работать отлично. куда я иду не так?