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" => "删除成功!",];
}
}声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
