tp5 全选/全不选 /删除 /批删
这个表单前端知识是有关于layui的使用 所以需要引入layui的js文件
表单代码
<table class="layui-table" lay-skin="line"> <colgroup> <col width="20"> <col width="100"> <col width=""> <col width="110"> <col width="50"> </colgroup> <thead> <tr> <th colspan="5"> <a href="javascript:document.location.reload()" title="刷新"><button class="layui-btn layui-btn-primary layui-btn-small" type="button">刷新</button></a> <a href="javascriot:;" class="batchDel" title="删除"><button class="layui-btn layui-btn-primary layui-btn-small" type="button">删除</button></a> <a href="javascriot:;" class="delete_completely" title="彻底删除"><button class="layui-btn layui-btn-primary layui-btn-small" type="button">彻底删除</button></a> <a href="javascriot:;" class="important" title="标为重要"><button class="layui-btn layui-btn-primary layui-btn-small" type="button">已读</button></a> <a href="javascriot:;" class="read" title="标为已读"><button class="layui-btn layui-btn-primary layui-btn-small" type="button">重要</button></a> </th> </tr> <tr> <th><input type="checkbox" lay-filter="checkeds" lay-skin="primary"></th> <th>发件人</th> <th>主题</th> <th colspan="2">发件时间</th> </tr> </thead> <tbody> {foreach name="arr" item="v"} <tr> <td class="check-mail"> <input type="checkbox" class="checkone" value="{$v.m_id}" name="m_id[]" lay-skin="primary"> </td> <td>{$v.sender}</a></td> <td><a href="{:url("mail_detail", ["m_id" => $v["m_id"]])}">{$v.m_title}</a></td> <td>{$v.m_time || date="Y-m-d",###}</td> <td class="text-c"> {if condition="$v.m_state==2"} <i class="layui-icon tab" tab-attr="a" style="font-size: 18px;color: #1E9FFF;cursor: pointer;"></i> {else} <i class="layui-icon tab" tab-attr="b" style="font-size: 18px;color: #ccc;cursor: pointer;"></i> {/if} </td> </tr> {/foreach} </tbody> </table> js代码
layui.use(["form", "element",], function () { var form = layui.form ,$=layui.$ ,layer=layui.layer; // 全选控制 form.on("checkbox(checkeds)", function(data){ if(data.elem.checked){ $(".checkone").prop("checked",true); }else{ $(".checkone").prop("checked",false); } form.render("checkbox"); });
// 删除功能 $(".batchDel").click(function () { layer.confirm("确认要删除吗?", { btn: ["确定", "取消"] //按钮 },function (index){ var d=$("form").serialize(); console.log(d); return false; if(d==""){layer.msg("未选中任何邮件"); return false;} $.ajax({ url:"{:url("mail/mail_batchDel")}", type:"post", data:d, dataType:"json", success:function(data){ if(data.code == 200){ $("input:checkbox[name=m_id]:checked").each(function(i){ $(this).parents("tr").remove(); }); layer.msg(data.msg, {icon: 1, time: 1800}); }else if(data.code==400){ layer.msg(data.msg, {icon: 2, time: 1800}); } } }); }); });
控制器代码
//收件箱删除 public function mail_batchDel() { if ($this->request->isAjax()) { $datas = $this->request->post(); $res = Db::table("inbox")->where("m_id", "in", $datas["m_id"])->update(["m_state" => 3]); if ($res == FALSE) { return ["code" => 400, "msg" => "删除失败!",]; } $arr = []; foreach ($datas["m_id"] as $v) { $arr[] = [ "m_id" => $v, "u_id" => Session::get("userData.id"), "d_state" => 0, "d_time" => time(), ]; } Db::table("mail_dustbin")->insertAll($arr); return ["code" => 200, "msg" => "删除成功!",]; } }
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。