Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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
Jquery ui 在事件接收时从jQuery UI排序表中删除项_Jquery Ui_Jquery Ui Sortable - Fatal编程技术网

Jquery ui 在事件接收时从jQuery UI排序表中删除项

Jquery ui 在事件接收时从jQuery UI排序表中删除项,jquery-ui,jquery-ui-sortable,Jquery Ui,Jquery Ui Sortable,我想从接收事件的jQuery UI可排序列表中删除一项。我正在尝试这样的东西: receive: function(event, ui){ num_of_items = num_of_items+1; if(num_of_items >= 3) { ui.item.remove(); num_of_items = num_of_items -1; } } 这将导致以下错

我想从接收事件的jQuery UI可排序列表中删除一项。我正在尝试这样的东西:

receive: function(event, ui){
    num_of_items = num_of_items+1;                          


    if(num_of_items >= 3)
    {
        ui.item.remove();
        num_of_items = num_of_items -1;
    }
}
这将导致以下错误:

未捕获的TypeError:无法读取未定义的属性“options”


item.remove()似乎可以在任何其他事件上正常工作,例如beforeStop、stop等。

在接收回调时删除项不是一个好主意,因为它可以用于其他回调。但你不能让它变得更糟糕。以下是我的建议:

  • 使用参数初始化您的排序表
  • 在接收回调上,删除用于参数项的类,使其不再可排序
  • 此时,调用可排序元素应该是一个好主意(可能没有必要)。向该元素添加一个类,以便使用选择器轻松查找并隐藏它(同时使用jQuery)
  • 然后,删除一个项目可以很容易地安全地推迟,并在stop或beforeStop回调中调用它进行清理
希望它适合你