Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在jQueryUI可排序小部件中,如何在start方法中执行取消操作_Javascript_Jquery Ui_Jquery Plugins_Jquery Ui Sortable - Fatal编程技术网

Javascript 在jQueryUI可排序小部件中,如何在start方法中执行取消操作

Javascript 在jQueryUI可排序小部件中,如何在start方法中执行取消操作,javascript,jquery-ui,jquery-plugins,jquery-ui-sortable,Javascript,Jquery Ui,Jquery Plugins,Jquery Ui Sortable,当您尝试在start方法中执行取消操作时,jQueryUI sortable小部件抛出异常(this.helper为null)。下面是一个例子: $('#sort').sortable({ start: function() { $(this).sortable('cancel'); //cancel operation. Causes an exception (this.helper = null) } }); 请参阅此JSFIDLE以了解实

当您尝试在start方法中执行取消操作时,jQueryUI sortable小部件抛出异常(this.helper为null)。下面是一个例子:

$('#sort').sortable({
    start: function() {        
        $(this).sortable('cancel'); //cancel operation. Causes an exception (this.helper = null)
    }
});
请参阅此JSFIDLE以了解实时代码示例


在jQueryUI可排序小部件的“开始”菜单中使用“取消”选项是否有解决方法?

答案是,如果您阅读jQuery UI文档,则仅在停止和接收事件上支持取消操作。基本上,一旦用户开始拖动,在将项目拖放到新位置之前,您无法恢复该操作

为什么要在开始功能中取消它?你不能使用停止或接收吗?你能详细说明原因吗?@Irvindiminakaedward我排除了我使用的实际代码,这些代码可以充分说明你的问题,以保持问题的焦点。如果不应该的话,我不希望重新排序(如果我将cancel添加到stop或receive方法中就会发生)。否则,我对Knockout.js的使用就会失去同步。这就是为什么我需要取消在开始(防止重新排序发生)或如果可能更早。这回答了您的问题吗?您想在运行时还原它,或者某些可排序的项目必须始终不可排序?@irvindomininakadeward某些项目必须不可排序。不幸的是,选择要包括的项存在一个问题,即可以选择排除的项并使用它来移动整个父UL(而不仅仅是LI)。这可能是因为排除项是包含项的子项。不管怎么说,这很奇怪,也让人无法忍受。这就是为什么我一开始就试图阻止搬家。