jQuery 可排序取消事件(如果无效)

标签 jquery jquery-ui-sortable

我有一个可排序的列表。在开始排序之前,我想检查该列表的所有元素是否有效。如果没有,请取消事件并保持列表不变。

您可以在此处找到代码 http://jsfiddle.net/DZYW5/4/

当我使用它时,事件被取消,但元素被删除。

start: function (event, ui) {
    if (!valid()) {
        return false;
        // it cancel's but the element is removed...
    }
}

也许我应该实现一个“beforeStart”事件?建议?

最佳答案

您可以使用cancel method

$("#list").sortable({
    connectWith: ".connectedSortable",
    items: '.sortable-item',
    handle: '.handle',
    placeholder: "ui-state-highlight",
    stop: function (event, ui) {
        console.log('stop')
        if (!valid()) {
            $( this ).sortable( "cancel" );
        }
    }
});

演示:Fiddle

关于jQuery 可排序取消事件(如果无效),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18470835/

相关文章:

javascript - 按钮打开相同的模式

javascript - 如何用取消停止可排序事件

Jquery UI Sortable - Div 滚动问题

jquery - 不错的滚动问题

jQuery 可放置 Accordion

javascript - Rails 4 中加载特定 div 时调用 JS

javascript - jQuery Carousel 插件与 WowSlider 类似且更轻

jquery-ui - 在 droppable 的 Drop 事件上调用 $(item).sortable ('cancel' ) 禁用可排序

jQuery 可排序在 IE 中不起作用

jQuery可排序,如何限制仅通过单击指定元素来排序行