Laravel框架基于ajax和layer.js实现无刷新删除功能示例

时间:2022-09-11 08:17:51

本文实例讲述了Laravel框架基于ajax和layer.js实现无刷新删除功能。分享给大家供大家参考,具体如下:

1、首先要引入layer.js

<script type="text/javascript" src="{{ asset('/public/bootstrap/js/jquery-3.2.1.min.js') }}"></script>
<script type="text/javascript" src="{{ asset('/public/layer/layer.js') }}"></script>

2、给删除按钮加事件

<a style="font-size: 15px;" type="submit" class="btn" onclick="delUser({{ $user->id }})">删除</a>

3、事件的内容

function delUser(user_id)
{
  layer.confirm('您确定要删除我吗?', {  // 使用layer.js确认弹窗
    btn: ['确定', '取消'],
  }, function() {            // 当确定时执行
    $.post("{{ url('user') }}/" + user_id, {  // 网址、数据、成功后操作
      "_token": "{{ csrf_token() }}",
      "_method": "delete"
    }, function(data) {
      if (data.status == 0) {
        layer.msg(data.msg, { icon: 6});
        location.href = "{{ url('user/index') }}";
      } else {
        layer.msg(data.msg, { icon: 5});
      }
    });
  }, function() {});
}

4、上述事件传到方法内容

public function destroy($user_id)
{
    $res = User::find($user_id)->delete();
    if ($res) {
      $data = [
        'status' => 0,
        'msg' => '删除成功'
      ];
    } else {
      $data = [
        'status' => 1,
        'msg' => '删除失败'
      ];
    }
    return $data;
}

5、完成

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。