2012-10-14 60 views
7

可能重複:
JQuery sortable lists and fixed/locked items如何從元素中刪除可排序的jQuery UI?

我綁定排序的元素,像這樣:

$('#elem').sortable({ 
    items: 'li', 
    placeholder: 'drop-highlight', 
    forcePlaceholderSize: true, 
    revert: true 
}); 

在一個特定的事件我想不再允許該元素可排序。我如何取消綁定?

所有這些單獨審判,都以失敗告終(即#elem仍然排序後):

$('#elem').unbind('sort'); 
$('#elem').sortable('destroy'); 
$('#elem').sortable('option', 'sort', null); 
+1

不知道爲什麼這被關閉爲重複,它不應該是。這個問題是關於反轉任何$ .fn.sortable對元素的做法。 「重複」是關於防止對子元素進行排序。兩個不同的問題。 –

回答

6

是啊,這蘇計劃** S :-(這消除功能 CSS類/ 1秒(毀滅appearently殺了小部件,而不是添加類或標籤)

$('#elem').sortable({ 
    items: 'li', 
    placeholder: 'drop-highlight', 
    forcePlaceholderSize: true, 
    revert: true 
}); 

將此代碼放在當你需要「不可排序」列表中的處理後注入跨度

function() { 
    $("#elem").sortable("destroy"); //call widget-function destroy 
    $("#elem li").removeClass('ui-state-default'); 
    $("#elem li span").remove(); 
} 

$(「#elem」)。sortable(「destroy」); 確實實際上破壞了可排序的功能,它只是忘記清理。

0

如果您希望禁用排序那就試試這個:

$("#elem").sortable("disable"); 

並使回

$("#elem").sortable("enable");