如何在ajax中使用DELETE方法进行laravel

时间:2017-11-10 04:55:35

标签: php jquery ajax laravel-5.3

在Laravel项目中,我想使用ajax删除项目。 我的路线是

Route::resource('title','TitleController');

这是我的ajax代码

$.ajax({
        url:'title',
        type: 'post',
        data: {_method: 'delete', _token :token, id : id},
        success:function(msg){

            console.log(msg);

         }
      });

那么如何在带有删除项目参数的ajax中使用DELETE方法呢?

2 个答案:

答案 0 :(得分:0)

使用正确的路线名称,传递网址中的ID

 url:{{route('title.destroy',['id'=>$title->id]}},

url:{{action('TitleController@destroy',['id'=>$title->id])}}
在你的控制器中你做了类似的事情:

public function destroy($id)
    {
       Title:::find($id)->delete();
       redirect()->to('/')->with('message','Successfully deleted the title');
    }

由于你在javascript中有id,你需要将它连接到url

完整代码:

$.ajax({
        url:'{{url('title')}}'+id,
        type: 'post',
        data: {_method: 'delete', _token :token},
        success:function(msg){

            console.log(msg);

         }
      });

答案 1 :(得分:0)

这是解决的ajax代码

$.ajax({
        url:"{{url('title/" +id+ "')}}", //----- OR url :"/title/"+id,
        type: 'DELETE',
        data: {_token :token},
        success:function(msg){
            console.log(msg);
            }   
       });