后台用戶模塊——刪除和批量刪除


1.添加刪除用戶鏈接

            //點擊刪除按鈕,執行onclick事件的member_del()方法,傳入當前用戶的id
            <a title="刪除" onclick="member_del(this,{{ $v->user_id }})" href="javascript:;">
              <i class="layui-icon">&#xe640;</i>
            </a>

2.編寫刪除操作的onclick事件的member_del()方法

    //用戶刪除
    function member_del(obj, id) {
      layer.confirm('確認要刪除嗎?', function(index) {
        //$.post(請求的網址,發送方式,攜帶的token,要返回的數據)
        $.post('/admin/user/'+id,{"_method":"delete","_token":"{{csrf_token()}}"},function(data){
          console.log($data);
        });
      });
    }

3.執行刪除用戶控制器方法,接收刪除路由傳遞過來的用戶id,執行刪除操作,並返回給客戶端

    //執行一個用戶刪除操作
    public function destroy($id)
    {
        //根據刪除路由傳過來的用戶id,查出對應的數據
        $user = User::find($id);
        //執行刪除操作
        $res = $user->delete();
        //根據刪除操作結果,給客戶端返回json格式的數據
        if ($res) {
            $data = [
                'status'=>0,
                'message'=>'刪除成功'
            ];
        }else{
            $data = [
                'status'=>1,
                'message'=>'刪除失敗'
            ];
        }
        return $data;        

    }

4.前台ajax接收服務端返回的數據

        function(data){
          //console.log($data);
          if (data.status ==0) {
            //移除當前元素
            $(obj).parents("tr").remove();
            //layer彈層給提示信息和笑臉圖標,1000毫秒后關閉
            layer.msg(data.message, {icon: 6,time: 1000});
          }else{
            //layer彈層給提示信息和哭臉圖標,1000毫秒后關閉
            layer.msg(data.message, {icon: 5,time: 1000});
          }

5.批量刪除用戶

  • 將每個用戶數據前面的復選框添加一個data-id屬性
          <td>
            <div class="layui-unselect layui-form-checkbox" lay-skin="primary" data-id='{{ $v->user_id }}'><i class="layui-icon">&#xe605;</i></div>
          </td>
  • 給批量刪除按鈕添加點擊事件
      <button class="layui-btn layui-btn-danger" onclick="delAll()"><i class="layui-icon"></i>批量刪除</button>
  • 編寫點擊事件
    function delAll(argument) {
      //定義空數組用來放置要批量刪除的用戶的id
      var ids = [];
      //選中所有屬性為layui-form-checked的復選框,遍歷並獲取它們的data-id
      $(".layui-form-checked").not('.header').each(function(i,v){
      //將獲取的data-id保存起來
        var u = $(v).attr('data-id');
        //將獲取的data-id的值push到所有用戶ids數組中
        ids.push(u);
      });

      layer.confirm('確認要刪除嗎?', function(index) {
        //以get方式發送到admin/user/del,攜帶所有要刪除的用戶id,返回data數據
        $.get('/admin/user/del',{'ids':ids},function(data) {
 
        });
      });
    }
  • 創建批量刪除用戶路由
    //批量刪除用戶路由
    Route::get('user/del', 'UserController@delAll'); 
  • 創建批量刪除用戶控制器方法
    //批量刪除所有選中用戶
    public function delAll(Request $request)
    {
        //獲取到所有選中用戶的ids
        $input = $request->input('ids');
        //執行刪除操作
        $res = User::destroy($input);
        //根據刪除操作結果,給客戶端返回json格式的數據
        if ($res) {
            $data = [
                'status'=>0,
                'message'=>'刪除成功'
            ];
        }else{
            $data = [
                'status'=>1,
                'message'=>'刪除失敗'
            ];
        }
        return $data;  
    }
  • 批量刪除用戶控制器方法給客戶端返回數據
      function(data) {
          if (data.status ==0) {
            //移除當前元素
            $(".layui-form-checked").not('.header').parents('tr').remove();
            layer.msg(data.message, {icon: 6,time: 1000});
          }else{
            layer.msg(data.message, {icon: 5,time: 1000});
          } 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM