Я получаю следующую ошибку, когда сортирую/перегруппирую div QUICKLY.
TypeError: this.placeholder[0].parentNode is null
JQuery UI - это API, который я использую: http://jqueryui.com/sortable/
$("#contents").sortable({
beforeStop: function (event, ui) {
console.log("BeforeStop Fn Invoked:Parent Node Val: " + $(ui.placeholder).parent()[0]);
if (typeof ($(ui.placeholder).parent()[0]) === 'undefined') {
console.log("If condition passed: " + ($(ui.placeholder).parent()[0]));
$("#contents").sortable('cancel');
}
console.log("BeforeStop Fn Terminates");
},
stop: function (event, ui) {
console.log("Inside Stop Function");
var op = $(this).sortable('toArray');
for (i = 0; i < result.length; i++) {
result[i] = result[i].replace('-sn', '');
}
var contents_identifier = JSON.stringify(op);
$.post(baseurl + 'index.php', {
para1: contents_identifier
},
function (data) {
fill_content_table();
});
console.log("Stop Fun Terminated\n");
}
}).disableSelection();
Всякий раз, когда я становлюсь выше ошибки, это то, что печатает консоль в Firebug:
##################################################################
BeforeStop Fn Invoked: Parent Node Val: undefined
If condition passed: undefined
BeforeStop Fn Terminates
TypeError: this.placeholder[0].parentNode is null
Я предполагаю исключение или выше ошибки occus, как только функция остановки выполняется (поскольку я не могу видеть инструкцию отладки Inside Stop Function).
Пробовал несколько вещей, например, откладывать казни. Но это не сработало. Любая помощь приветствуется.
UPD: Обратите внимание, что следующий вывод консоли в случае SUCCESS:
##################################################################
BeforeStop Fn Invoked: Parent Node Val: [object HTMLDivElement]
BeforeStop Fn Terminates
Inside Stop Function
POST https://www. 200 OK 730ms
Stop Fun Terminated
####################################################
POST https:www.........200 OK 734ms
Вам нужны цитаты вокруг ui.placeholder
как $('ui.placeholder')