2013-04-12 54 views
0

我是jQuery的新手。我搜索了文檔和計算器,並找不到答案。點擊按鈕時,我需要取消排序列表中的最後更改,並且它可以工作。JQuery .sortable(「cancel」) - 如何獲取已移動的項目?

我還需要獲取已移至其先前位置的元素(或其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> 

提前感謝!

回答

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); 
    }); 
}); 

DEMO: http://jsfiddle.net/dirtyd77/Tmdmq/

注意:如果你不熟悉console.log,然後去這個link

+0

Dom,非常感謝!它完美地解決了這個問題。 – user2274753

相關問題