Javascript Jquery sortable serialize提供空对象数组

Javascript Jquery sortable serialize提供空对象数组,javascript,jquery,jquery-ui-sortable,Javascript,Jquery,Jquery Ui Sortable,我使用的不是jqueryui排序表 我的完整代码如下: 我的问题是,在上面的代码中,中记录的sortable('serialize')不适用于我。它给了我一个空对象数组,而我希望数组按排序的顺序包含对象。您可以通过调用.children()获得所有 var li_list = $('.draggable').children(); 通过像这样调用.children()可以获取所有 var li_list = $('.draggable').children(); @sza的答案会很有效,但

我使用的不是jqueryui排序表

我的完整代码如下:


我的问题是,在上面的代码中,中记录的sortable('serialize')不适用于我。它给了我一个空对象数组,而我希望数组按排序的顺序包含
  • 对象。

    您可以通过调用.children()获得所有
  • var li_list = $('.draggable').children();
    

    通过像这样调用.children()可以获取所有
  • var li_list = $('.draggable').children();
    

    @sza的答案会很有效,但我还是设法使用插件选项使其正常工作:

    jQuery('.draggable').sortable({
      onDrop: function (item, container, _super) {
          console.log(container.el.sortable("serialize").get());
        _super(item, container);
      },
      serialize: function (parent, children, isContainer) {
        return isContainer ? children.join() : parent.attr('id');
      }
    });
    
    问题是,默认的serialize函数没有返回我们期望的结果,所以我创建了一个自定义函数,与上面示例中的一个非常类似(“具有有限删除目标的连接列表”)


    以下是@sza的答案将很有效,但我还是设法使用插件选项使其正常工作:

    jQuery('.draggable').sortable({
      onDrop: function (item, container, _super) {
          console.log(container.el.sortable("serialize").get());
        _super(item, container);
      },
      serialize: function (parent, children, isContainer) {
        return isContainer ? children.join() : parent.attr('id');
      }
    });
    
    问题是,默认的serialize函数没有返回我们期望的结果,所以我创建了一个自定义函数,与上面示例中的一个非常类似(“具有有限删除目标的连接列表”)


    这是

    不。如果在console中展开数组和对象,您将注意到我无法将对象与
  • 元素关联。对象不属于
  • 。也许我错过了一些明显的东西。我需要获取该数组中每个对象的ID。如果在console中展开数组和对象,您将注意到我无法将对象与
  • 元素关联。对象不属于
  • 。也许我错过了一些明显的东西。我需要获取该数组中每个对象的ID。@reigle它已排序。由于可拖动的更改,dom和children()都是自上而下的项。@Reigel它已排序。由于可拖动的更改,dom和children()都是自上而下的项。