ThinkPhp6、Laravel框架使用Ajax完成无刷新批量删除操作

TP 框架和 Laravel 框架使用 Ajax 完成批量删除几乎一模一样,两者并无太大区别

批量删除的要点就一点,获取到所选中的复选框的 ID,只要取到 ID,剩下的就好办了

复选框全选全不选操作如下:https://blog.csdn.net/Xian_Hu/article/details/121486325?spm=1001.2014.3001.5501icon-default.png?t=LA92https://blog.csdn.net/Xian_Hu/article/details/121486325?spm=1001.2014.3001.5501

                                      完整代码在最下方

第一步:

给复选框和批删按钮设置上点击事件,批删按钮可用 ID Class 设置点击事件,而复选框只能使用 Class 设置点击事件,因为 ID 我们要进行赋值,取到所有复选框的 ID

 //            批删按钮点击事件 

<button type="button" id="delAll">批删</button>

 //            复选框点击事件 , 这里我使用了循环,所以 ID 为 val.id(循环遍历ID)

<input type="checkbox" id="{$val.id}" class="btns">

            

第二步:

引用 JS,并起一个 ID 数组,进行赋值

 第三步:

书写 Aajx 进行传值

 第三步:

到达控制层接收 ID ,接收到 ID 后实例化对象传到模型层进行操作

 第四步:

到达模型层完成删除的操作,直接使用 destroy 实现删除即可

 第五步:

在到达控制层进行判断是否删除成功,删除成功直接返回 Json 形式的数据(大部分不会失败)

第六步:

到达 Ajax 返回值,进行判断传回参数是否正确,判断成功的话直接把所有祖先元素的段落删除

                                         完整代码

                                         HTML

//            批删按钮点击事件 

<button type="button" id="delAll">批删</button>

 //            复选框点击事件 , 这里我使用了循环,所以 ID 为 val.id(循环遍历ID)

<input type="checkbox" id="{$val.id}" class="btns">
//   Js代码块
<script>
    $("#delAll").click(function ()
    {
        // 起一个名为ID的数组
        var id = [];
        $(".btns:checked").each(function()
        {
            // 获取到已被选中复选框的ID并赋值
           id.push($(this).prop("id"));
        });
        // 进行ajax处理
        $.ajax({
            // 传值位置
           url:'delAll',
            // 传值方式
           type:'get',
            // 传值内容
            data:{id:id},
            // 返回值类型
           dataType:'json',
            // 返回值
           success:function (e)
           {
               // 打印返回值
               console.log(e);
               // 判断返回值是否正确
               if(e.code==600)
               {
                   // 判断成功,把所有被选中的复选框祖先元素的段落删除
                   $(".btns:checked").parents('tr').remove();
               }
           }
        });
    });
</script>

    
                                       控制器

//    批量删除的控制器
    public function delAll()
    {
//        获取到ID值
        $id = $_GET["id"];
//        实例化对象
        $obj = new \app\model\user();
//        判断是否成功
        $res = $obj->delAll($id);
        if($res)
        {
//            成功返回值json的值
            return json([
               'code'=>'600',
               'msg'=>'成功',
               'data'=>'',
            ]);
        }
    }

                                       模型层

public function delAll($id)
{
     return $this->destroy($id);
}


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值