Delete Database Record Without Page Refreshing in Laravel ajax

laravel data delete by ajax

This tutorial about delete a database record without page refreshing by ajax in laravel 7, laravel 8, laravel 9.

Delete a record with ajax

If you want to delete record without page refreshing then use jquery ajax. Here we will explain how to use ajax for delete records. first make a UserController here define index or delete metthod see below examples.

web.php

<?php
Route::get('users',[UserController::class,'index'])->name('users');
Route::post('user-delete',[UserController::class,'delete'])->name('user.delete');

UserController

<?php

namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\User;

class UserController extends Controller{
  public function index(){
    $users = User::get();
    return view('students.index', compact('users'));
  }

  public function delete(Request $request){
    $id = $request->id;
    User::where('id', $id)->delete();
    return response()->json(['status'=>'200']);
  }
}

View file

In view files our html code present

<html>
  <head>
    <title>advanced web tuts</title>
  </head>
  <body>
    <h1>Users list</h1>
    <table>
      <thead>
        <tr>
          <th>Name</th>
          <th>Email</th>
          <th>Action</th>
        </tr>  
      </thead>
      <tbody>
        @foreach($users as $user)
        <tr>
          <td>{{ $user->name }}</td>
          <td>{{ $user->email }}</td>
          <td><a href="javascript:void(0);" class="delete" data-id="{{ $user->id }}">Delete</a></td>
        </tr>
        @endforeach
      </tbody>
    </table>

    <script src="js/jquery.js"></script>
    <script>
      $(".delete").on("click", function(){
        var id = $(this).attr("data-id");
        $.ajax({ 
          url: "{{ route('user.delete') }}",
          data: {"id": id,"_token": "{{ csrf_token() }}"},
          type: 'post',
          success: function(result){
              location.reload();
          }
        });
      });
    </script>
  </body>
</html>

You read this tutorial on advanced web tuts provided by anmol sharma.

php laravel developer anmol sharma

Anmol Sharma

I am a software engineer and have experience in web development technologies like php, Laravel, Codeigniter, javascript, jquery, bootstrap and I like to share my deep knowledge by these blogs.