Laravel中的Ajax删除功能不起作用

时间:2017-11-04 23:14:02

标签: php jquery ajax laravel

我试图在Laravel中制作一个ajax删除功能。

我无法弄清楚它为什么不起作用......没有错误但没有任何反应 -  谢谢你的帮助!

我的路线:

Route::post('/deleteWithAjax', 'eventController@deleteWithAjax');

我的删除按钮:

<button value="{{$event->id}}" class="btn btn-danger btn-dell">Delete</button>

我的javascript:

 $.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});

$(document).ready(function(){
        $('document').on('click', '.btn-dell', function() {

        var id = $(this).val();
        var el =  $('#{{$event->id}}');
        $.ajax({
            type: 'post',
            url: "deleteWithAjax",
            data: {
                'id': id
            },
            success:function(data){
                el.remove();
            }
        })
    })
});

我的控制器方法:

public function deleteWithAjax(Request $r){
        eventModel::find ( $r->id )->delete();
        return response()->json();
}

我要删除的元素是div:

 <div id="{{$event->id}}">

编辑**

我更改了事件处理程序

 document.getElementById("btn-dell").onclick = function() 

现在它被解雇了 - 但我在控制台中出现错误,后端仍然没有被调用:

POST http://wt-projekt.test/index.php/deleteWithAjax 419 (unknown status)
send @ app.js:29
ajax @ app.js:29
document.getElementById.onclick @ home:50

1 个答案:

答案 0 :(得分:0)

我解决了问题:

  1. 我将令牌部分放在文档就绪功能中 - &GT;没有错误,记录在数据库中删除但仍在视图中

  2. 我在ajax调用中添加了dataType:'text' - &GT;错误也在视图中删除

  3. 尽管如此,感谢您的评论!