0

我正在为我的一个项目使用 jQuery UI 的 sortable。现在,在调用更新方法之前一切都很好。代码如下所示:

$(document).ready(function() {
    $('#menu_sections').sortable({
        cursor: 'move',
        update: function(event, ui) {
            var new_order = $(this).sortable('serialize');
        }
    });
});

可排序的工作完全正常,项目是可排序的。但是,当我更改一项的位置时,会调用更新事件,并在 Firebug 的控制台中收到以下消息:

$("#menu_sections").sortable is not a function
var new_order = $('#menu_sections').sortable('serialize');

有什么想法可能导致这种情况吗?

4

1 回答 1

1

您需要在外部范围内定义一个指针。

update: function(event, ui) {
    var new_order = $(this).sortable('serialize');
    }

在您的更新回调中,“this”并不指向您想要的“this”。

于 2012-05-03T14:20:43.353 回答