JQuery .sortable(“取消”) - 如何获取被移动的项目?

时间:2013-04-12 14:23:18

标签: jquery jquery-ui

我是jQuery的新手。我搜索了文档和stackoverflow,但找不到答案。我需要在单击按钮时取消可排序列表中的最后一次更改,并且它可以正常工作。

我还需要获取已移动到其先前位置的元素(或其id)。我该怎么办?

我的代码:

<script type="text/javascript">
$(function(){
  $("#sortable").sortable({
    placeholder: "ui-state-highlight",
    opacity: 0.6
  });
  $("#cancelSort").click(function(){
    $("#sortable").sortable("cancel");
  });
});
</script>

<button id="cancelSort">Cancel Sort</button>

提前致谢!

1 个答案:

答案 0 :(得分:0)

创建变量,使用stop event,并将变量设置为ui.item

$(function(){
    var last_el=null,
        last_id=null;

  $("#sortable").sortable({
      placeholder: "ui-state-highlight",
      opacity: 0.6,
      stop: function( event, ui ){
        last_el = $(ui.item);  //element
        last_id = $(ui.item).attr('id'); //element_id
      }
  });

  $("#cancelSort").click(function(){
     $("#sortable").sortable("cancel");
     console.log(last_el, last_id);
  });
});

样本: http://jsfiddle.net/dirtyd77/Tmdmq/

注意:如果您不熟悉console.log,请转到此link