请选择 进入手机版 | 继续访问电脑版
绿茶科技社区
这篇文章主要介绍了Laravel框架实现的批量删除功能,结合实例形式分析了Laravel框架批量删除功能相关的前端界面布局及后台控制器实现技巧,需要的朋友可以参考下
本文实例讲述了Laravel框架实现的批量删除功能。分享给大家供大家参考,具体如下:
1、HTML的内容
  1. <tr>
  2.     <th><input type="checkbox" class="checkbox-inline" onclick="checkAll(this)"></th>  // 用来全选
  3.   </tr>
  4.   </thead>
  5.   <tbody>
  6.   @foreach ($keys as $key)
  7.     <tr>
  8.       <td><input type="checkbox" class="ck checkbox-inline" name="item[]" value="{{ $key->id }}"></td>  // 复选框
  9.     </tr>
  10.   @endforeach
  11.   <a style="font-size: 15px;" id="delAll" type="button" class="btn btn-primary" onclick="delKeys()">批量删除</a>
  12.   </tbody>
复制代码
2、js的内容
  1. // 全选
  2. var ck = $('.ck');
  3. function checkAll(qx)
  4. {
  5.   if (qx.checked) {
  6.     for (var i=0; i<ck.length; i++) {     // 实现全选
  7.       ck[i].setAttribute("checked", "checked");
  8.     }
  9.   } else {
  10.     for (var i=0; i<ck.length; i++) {     // 取消全选
  11.       ck[i].removeAttribute("checked");
  12.     }
  13.   }
  14. }
  15. // 批量删除
  16. function delKeys()
  17. {
  18.   var items = [];
  19.   for (var i=0; i<ck.length; i++) {
  20.     if (ck[i].checked) {
  21.       items.push(ck[i].value);    // 将id都放进数组
  22.     }
  23.   }
  24.   if (items == null || items.length == 0)    // 当没选的时候,不做任何操作
  25.   {
  26.     return false;
  27.   }
  28.   layer.confirm('您确定要删除我们吗?', {
  29.     btn: ['确定', '取消'],
  30.   }, function() {
  31.     $.post("{{ url('key/delAll') }}", {
  32.       "_token": "{{ csrf_token() }}",
  33.       "keys": items
  34.     }, function(data) {
  35.       if (data.status == 0) {
  36.         layer.msg(data.msg, { icon: 6});
  37.         location.href = location.href;
  38.       } else {
  39.         layer.msg(data.msg, { icon: 5});
  40.       }
  41.     });
  42.   }, function() {});
复制代码

3、控制器中的内容
  1. public function delAll(Request $request)
  2. {
  3.      for ($i=0; $i<count($request['keys']); $i++) {
  4.        $res = Key::where('id', $request['keys'][$i])->update(['isDelete' => 1]);  // 遍历删除
  5.      }
  6.      if ($res) {
  7.        $data = [
  8.          'status' => 0,
  9.          'msg' => '删除成功'
  10.        ];
  11.      } else {
  12.        $data = [
  13.          'status' => 1,
  14.          'msg' => '删除失败'
  15.        ];
  16.      }
  17.      return $data;
  18. }
复制代码







分享到 :
0 人收藏

2 个回复

倒序浏览
麦机长  高级会员 | 2019-7-25 03:26:13
啥玩应呀
sparkdev  高级会员 | 2019-8-13 16:57:42
珍爱生命,果断回帖。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

举报|Archiver|手机版|小黑屋|Lvchakeji Inc.  

Powered by Discuz! X3.3 © 2001-2016 Comsenz Inc.

返回顶部