问题的症结在于:我需要禁用/包含仅针对特定项的两个可排序项之间的拖放,同时允许在它们的可排序项中拖放这些相同的项。我不明白如何使用cancel
或containment
来做到这一点,因为它们要么适用于所有排序,要么适用于所有项。是否可以仅取消排序表间的排序?或者,是否可以只包含某些项目?
以下是背景情况:我有两个使用connectWith
选项连接良好的可排序文件。它们代表时事通讯的两列,您可以将项目添加到每一列,并在它们之间拖放它们。但是,这些项具有类型,并且每列中可以包含的每种类型的项数都有限制。所以问题是,如果另一列的项目类型已经达到最大值,我想要禁用将项目从一列拖到另一列。我可以毫不费力地确定列中某一项的类型何时达到最大值,或者确定哪些项应该拖动,哪些不应该拖动。这只是在jquery ui中触发正确功能的问题。
发布于 2011-03-09 21:40:55
$(function() {
$( "#sortable1, #sortable2" ).sortable({
connectWith: ".connectedSortable",
receive: function(event, ui) {
if ( $(this).find('li').size() == 7 ) {
$(ui.sender).sortable('cancel');
}
}
});
});
如果#sortable
达到7个项目,它将停止接受其他项目
https://stackoverflow.com/questions/5252291
复制