Laravel5.8使用LayUI實現動態刪除

  • 2019 年 12 月 22 日
  • 筆記

友情提示:此篇文章大約需要閱讀 7分鐘4秒,不足之處請多指教,感謝你的閱讀。訂閱本站

其實在這裡,我並沒有把數據進行刪除,而是把資料庫中設置了一個狀態值,0代表著正常,而1代表著已經刪除,本著數據保護的原則,便於記錄用戶的操作數據,便於後期的查找以及維護,廢話不多說,上程式碼!

路由設置

Route::delete('pic/destroy/{id}', 'PicController@destroy'); //圖片單個刪除控制器

前台程式碼

<table class="layui-table" id="table">      <thead>      <tr>          <th></th>          <th>ID</th>          <th>標題</th>          <th>排序</th>          <th>縮略圖</th>          <th>操作</th>      </tr>      </thead>      <tbody>      @foreach($data as $value)          <tr>              <td>                  <div class="layui-form">                      <input type="checkbox" value="{{ $value->id }}" lay-skin="primary" lay-filter="RandomCheckbox">                  </div>              </td>              {{--按序號輸出數值--}}              <td>{{ $value->id }}</td>              <td>{{ $value->title }}</td>              <td>                  <input type="text" onchange="change(this, {{ $value->id }});" class="layui-input" value="{{ $value->sort }}" name="sort">              </td>              <td>                  <img class="admin-pic-index-img" src="{{ url($value->img) }}" alt="{{ $value->title }}">              </td>              <td>                  <a class="layui-btn layui-btn-sm layui-btn-normal layui-btn-radius" href="/admin/pic/edit/{{ $value->id }}">                      <i class="layui-icon layui-icon-edit"></i>                  </a>                  <button class="layui-btn layui-btn-sm layui-btn-danger layui-btn-radius" href="javascript:;" onclick="del(this, {{ $value->id }});">                      <i class="layui-icon layui-icon-delete"></i>                  </button>              </td>          </tr>      @endforeach      </tbody>  </table>

前台JS處理程式碼

/**   * 刪除單個元素方法   * @param obj   * @param id   */  function del(obj, id){      layer.confirm('確定要刪除么?', {          btn: ['確定','取消']      }, function(){          $.post(              //請求地址及參數              '/admin/pic/destroy/'+id,              //數據 & 方式 & CSRF認證              {'id':id,'_method':'delete', '_token':'{{ csrf_token() }}'},              //回調結果處理函數              function(res){                  //如果大於0,則表示成功                  if(res.code>0){                      layer.alert(res.msg,{icon:2})                  }else{                      layer.msg(res.msg);                      setTimeout(function(){window.location.reload();}, 1000)                  }              },              'json'          );      });  }

後端處理程式碼

/**   * 刪除圖片操作   * @param Request $request   */  public function destroy(Request $request){      $id = $request->id;      $sql = DB::update('update pic set status=1 where id=?',[$id]);      if($sql){          exit(json_encode(array('code'=>0, 'msg'=>'刪除成功')));      }else{          exit(json_encode(array('code'=>1, 'msg'=>'刪除出現異常')));      }  }