为了账号安全,请及时绑定邮箱和手机立即绑定

单击多个复选框时删除记录

单击多个复选框时删除记录

PHP
茅侃侃 2021-06-28 13:47:32
我想删除在复选框中选中的记录,同时也删除了整条记录。这是用户可以选择全选复选框的选项卡。<button type="checkbox" id="checkall" class="btn btn-default btn-sm checkbox-toggle">    <i class="fa fa-square-o" ></i></button><div class="btn-group">    <button type="submit" class="btn btn-default btn-sm" >        <i class="fa fa-trash-o"></i>    </button></div><!-- /.btn-group --><a href="{{ route('home.notificationbox') }}">    <button type="button" class="btn btn-default btn-sm">        <i class="fa fa-refresh"></i>    </button></a>这是表结构<div class="table-responsive mailbox-messages">    <table id="mailplan" class="table table-hover-row table-striped-row{{ count($admin_notifications) > 0 ? 'datatable' : '' }}" data-page-length="25">        <tbody>            @if (count($admin_notifications) > 0)                <?php $count=1; ?>                @foreach ($admin_notifications as $admin_notification)                    @if($admin_notification['is_read'] == 1)                                    <tr class="table-dark-row" data-entry-id="{{ $admin_notification['notification_id'] }}">                            <td>                                <a href="">{{ $count++ }}</a>                            </td>                            <td>                                <input type="checkbox" class="checkbox"                                     onclick="delete_admin_notification({{ $admin_notification['notification_id'] }});"                                    name = "deleteMultipleMail[]"                                     value = "{{ $admin_notification['notification_id' ]}}">                            </td>这是删除,控制器。Route::post('/deleteMultipleMail','HomeController@deleteMultipleMail');单击复选框删除所有记录或仅选择将被删除的记录。
查看完整描述

1 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

在你的 js 文件中:


$('.delete-all').on('click', function(e) {

    var idsArr = []; 


    $('.checkbox').each(function(){

        var isChecked = $(this).prop('checked');


        if(isChecked){

            idsArr.push($(this).val());

        }

    });


    $.ajaxSetup({

        headers: {

            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')

        }

    });


    $.ajax({

        url: "/deleteMultipleMail",

        type: 'POST',

        data:{

            idsArr: idsArr

        },

        success: function (response) {

            if(response.success){

             window.location = response.redirect_url; 

            } else {

                alert('Whoops Something went wrong!!');

            }

        },

        error: function (data) {

            alert(data.responseText);

        }

    });

});

在您的控制器中:


public function deleteMultipleMail(Request $request)

{

    $post = $request->all();


    AdminNotification::whereIn('notification_id' , $post['idsArr'])->delete();


    return response()->json(['success' => true, 'redirect_url' => 'your redirect url']);

}


查看完整回答
反对 回复 2021-07-02
  • 1 回答
  • 0 关注
  • 102 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信