简体   繁体   中英

Deleting post via ajax in Laravel 5.5. Works after refresh page

I'm new in Laravel.

When I click delete nothing happen, after refresh page the post deleting.

My controller

public function destroy(Request $request)

{

    if(isset($request->id)){
          $post = Post::findOrFail($request->id);
          $post->delete();
    }

 }

my route

Route::delete('/adminpanel/dashboard/posts/', 'Adminpanel\PostsController@destroy')->name('post.delete');

HTML

<a class="btn btn-danger deletebtn" data-post="{{ $post->id }}">
i class="fas fa-minus"></i></a>

javascript

  <script type="text/javascript">
    $(document).on('click', '.deletebtn', function(ev){
        let postid = $(this).attr("data-post");
        $.ajax({
            method: 'DELETE',
            url: '{{ route('post.delete') }}',
            dataType: 'json',
            data: {id:postid,"_token": "{{ csrf_token() }}"},

            success: function (data) {
                alert(data);
            },

            error: function (data) {
                alert(data);
            }
        });
    });

Try this.

Option #1:

<script type="text/javascript">
    $(document).on('click', '.deletebtn', function(ev){
        let postid = $(this).attr("data-post");
        $.ajax({
            method: 'DELETE',
            url: '{{ route('post.delete') }}',
            dataType: 'json',
            data: {id:postid,"_token": "{{ csrf_token() }}"},

            success: function (data) {
                location.reload();
            },

            error: function (data) {
                alert(data);
            }
        });
    });

Option #2: in your controller

public function destroy(Request $request)

{

    if(isset($request->id)){
          $post = Post::findOrFail($request->id);
          $post->delete();
          return redirect()->back();
    }

 }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM