Jquery UI Sortable - назначить сортируемым списком динамически созданные элементы
Добрый день. Проблема такого рода. Создаю проект, в котором есть много сортируемых списков и элементы можно создавать динамически. Столкнулся со следующей проблемой, которую пока не могу решить: у меня во время работы динамически создаются родительские элементы и дочерние к ним, дочерние внутри родительских должны сортироваться, всё происходит без перезагрузки страницы при загрузке все созданные списки сортируются, а динамически созданные связки родитель-дочерние не хотят даже после насильного назначения заметил что даже спустя секунду после загрузки назначение sortable списка не работает
есть функция:
function _sortable(list,elements,handle_s) {
$(list).sortable({
handle: handle_s,
update: function () {
length = $(elements).length;
var sort = length;
var arr = {};
arr["table_name"] = $("#table_name").val();
setTimeout(function () {
for (var i = 0; i < length; i++) {
var sort_id = $(elements + ":eq(" + i + ") .id_hidden").val();
arr[sort] = sort_id;
sort--;
}
$.ajax({
type: "POST",
url: '/php/sort.php',
data: arr,
dataType: 'json',
success: function (response) {
alert(response)
}
});
}, 350);
}
});
};
если я её пускаю во время выполнения скрипта
_sortable("#list", ".item_level1", ".handle_main");
всё работает
если делаю тайминг даже на секунду
setTimeout(function () {
_sortable("#list", ".item_level1", ".handle_main");
}, 1000);
то перестаёт
Источник: Stack Overflow на русском