大规模删除和单一删除在一个页面与laravel



我得到了一个表单,在该表单中,我可以通过选中复选框销毁多个项目,并可以通过单击表行中的删除按钮删除单个项目。

因为单个删除被一个包含DELETE方法的窗体包围。我不知道如何处理大规模删除。因为我想我也需要一份表格。

但因为单个删除有一个表单,我不能用另一个表单包围。

此外,我必须有空间使用表单进行筛选,这将发送POST方法。

在laravel中,最好的解决方案是什么?我不能使用动作,因为我需要DELETE方法。。

HTML表单非常适合编辑内容或创建新资源等简单交互。然而,当与项目列表交互并有多个可能的操作时,它会变得复杂(正如您所注意到的)。这就是我们新的最好的朋友AJAX的出现。我将使用jQuery,尽管你也可以使用纯javascript(这只是更多的工作)
我们将使用$.ajax方法调用服务器

$.ajax({
    url: 'your/target/url',
    type: 'delete',
    data: {ids: [1,2,3]}, // just an example. here you would insert the ids of all selected items
}).done(function(data){
    // gets called if everything goes well 
}).fail(function(jqXHR, textStatus){
    // ooops the request returned an HTTP error code, something bad must have happened
});

在控制器中,您应该能够使用Input::get('ids') 访问变量

我通过创建如下ajax请求解决了这种情况:

$.ajax({
  url: $(this).data('url'),
  type: 'POST',
  data: {_method: 'delete', _token: token},
  success: function () {
    //
  }
})

最新更新