2013-04-02 94 views
1

我有設計如下 https://gist.github.com/Achaius/5291761只有當節點重新排序

我想觸發只有當節點進行重新排序這種方法電平變化可嵌套樹如何叫「改變」事件。但是現在當前的功能是當我點擊類「dd-handle」的元素時,onchange事件觸發並調用服務器端腳本。

發生這種情況是因爲在線附近:296,我們有 'this.el.trigger('change');' 我只想在重新排列列表時觸發此更改事件。

+0

什麼插件,您使用的? – iappwebdev

回答

3

保存頁面上的最新訂單。在您的更改事件中,將新訂單與舊訂單進行比較。如果它們是不同的,一個訂單更改已經完成:

var idList = getIdList(); 

$('.dd').nestable(); 

$('.dd').on('change', function (event) { 
    var newIDList = getIdList(); 

    if (newIDList != idList) { 
     console.log("Order has been changed"); 
     idList = newIDList; 
    } 
}); 

function getIdList() { 
    var idList = ''; 
    $('.dd-item').each(function() { 
     idList += $(this).data('id'); 
    }); 

    return idList; 
} 

DEMO:http://jsfiddle.net/94NNb/1/

+0

僅在節點上更改級別時它不工作。如何知道行級別已更改? – rajeshpanwar

+0

是的,它不起作用...:/ – Buglinjo