第一步:先把引入的CSS js lib fonts images都放到public目录下
上代码:
<html class="x-admin-sm">
<head>
<meta charset="UTF-8">
<title>后台管理</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width,user-scalable=yes, minimum-scale=0.4, initial-scale=0.8,target-densitydpi=low-dpi" />
<link rel="stylesheet" href="/static/css/font.css">
<link rel="stylesheet" href="/static/css/xadmin.css">
<script src="/static/lib/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="/static/js/xadmin.js"></script>
<!--[if lt IE 9]>
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js">
</script>
<script src="https://cdn.staticfile.org/html5shiv/r29/html5.min.js"></script>
<script src="https://cdn.staticfile.org/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div class="demoTable">
搜索ID:
<div class="layui-inline">
<input class="layui-input" name="type" id="demoReload" autocomplete="off">
</div>
<button class="layui-btn" data-type="reload">搜索</button>
</div>
<div id="layerDemo" style="margin-bottom: 0;">
<div class="layui-btn-container" style="margin-top: 30px;">
<button data-method="setTop" class="layui-btn">添加</button>
</div>
</div>
<script type="text/html" id="toolbarDemo">
<div class="layui-btn-container">
<button class="layui-btn layui-btn-sm" lay-event="getCheckData">获取选中行数据</button>
<button class="layui-btn layui-btn-sm" lay-event="getCheckLength">获取选中数目</button>
<button class="layui-btn layui-btn-sm" lay-event="isAll">验证是否全选</button>
</div>
</script>
<script type="text/html" id="switchTpl">
<!-- 这里的 checked 的状态只是演示 -->
<input type="checkbox" name="is_show" value="{{d.is_show}}" lay-skin="switch" lay-text="有效|无效" lay-filter="sexDemo" {{ d.is_show == 1 ? 'checked' : '' }}>
</script>
<table class="layui-hide" id="LAY_table_user" lay-filter="LAY_table_user">
<script type="text/html" id="img">
<div><img src="{{d.img}}" width="30" height="30" alt="加载失败.."></div>
</script>
<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
</script>
</table>
<!-- 注意:如果你直接复制所有代码到本地,上述 JS 路径需要改成你本地的 -->
<script>
layui.use('table', function(){
var table = layui.table
form = layui.form
$ = layui.jquery
layer = layui.layer;
//方法级渲染
table.render({
elem: '#LAY_table_user'//表格ID
,toolbar: '#toolbarDemo'
,defaultToolbar: ['filter', 'exports', 'print', { //自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
title: '提示'
,layEvent: 'LAYTABLE_TIPS'
,icon: 'layui-icon-tips'
}]
,url: '/admin/Discount/query'//后台数据路径
,cols: [[
{type: 'checkbox', fixed: 'left'}
,{field:'id', width:80, title: 'ID', sort: true,fixed: true}
,{field:'name', width:80, title: '用户名'},
{field:'type', width:80, title: '优惠券类型'},
{field:'price', width:80, title: '优惠券面值', sort: true},
{field:'indata', width:80, title: '优惠券有效期限'},
{field:'img', width:80,title: '图片',templet:'#img'},
{field:'sort', width:80, title: '排序', sort: true},
{field:'is_show', title:'是否有效', width:85, templet: '#switchTpl', unresize: true},
{fixed: 'right', width:200, align:'center',title: '操作' ,toolbar: '#barDemo'}
]]
,id: 'testReload'
,page: true//开启分页
,limit:10
,height: 500
});
table.on('toolbar(LAY_table_user)', function(obj){
var checkStatus = table.checkStatus(obj.config.id);
switch(obj.event){
case 'getCheckData':
var data = checkStatus.data;
console.log(data)
// layer.alert(JSON.stringify(data));
$.ajax({
url:"{:url('admin/discount/delall')}",
data:{del:data},
success(res){
console.log(res)
}
})
break;
case 'getCheckLength':
var data = checkStatus.data;
layer.msg('选中了:'+ data.length + ' 个');
break;
case 'isAll':
layer.msg(checkStatus.isAll ? '全选': '未全选');
break;
//自定义头工具栏右侧图标 - 提示
case 'LAYTABLE_TIPS':
layer.alert('这是工具栏右侧自定义的一个图标按钮');
break;
};
});
//监听性别操作
form.on('switch(sexDemo)', function(obj){
console.log(obj.value)
});
//进行查看编辑删除
table.on('tool(LAY_table_user)', function(obj){
var data = obj.data;
console.log(data)
if(obj.event === 'detail'){
layer.msg('ID:'+ data.id + ' 的查看操作');
} else if(obj.event === 'del'){
layer.confirm('真的删除行么', function(index){
obj.del();
layer.close(index);
});
} else if(obj.event === 'edit'){
layer.alert('编辑行:<br>'+ JSON.stringify(data))
}
});
//搜索
var $ = layui.$, active = {
reload: function(){
var demoReload = $('#demoReload');
//执行重载
table.reload('testReload', {
page: {
curr: 1 //重新从第 1 页开始
}
,where: {
key: {
id: demoReload.val(),
type:demoReload.val(),
}
}
});
}
};
$('.demoTable .layui-btn').on('click', function(){
var type = $(this).data('type');
active[type] ? active[type].call(this) : '';
});
var active = {
setTop: function () {
var that = this;
layer.open({
type: 2 //此处以iframe举例
,
title: '优惠卷添加'
,
area: ['600px', '600px']
,
shade: 0
,
maxmin: true
,
offset: 'auto'
,
content: "{:url('read')}"
,
btn: ['继续弹出', '全部关闭'] //只是为了演示
,
yes: function () {
$(that).click();
}
,
btn2: function () {
layer.closeAll();
}
,
zIndex: layer.zIndex //重点1
,
success: function (layero, index) {
layer.setTop(layero); //重点2. 保持选中窗口置顶
//记录索引,以便按 esc 键关闭。事件见代码最末尾处。
layer.escIndex = layer.escIndex || [];
layer.escIndex.unshift(index);
//选中当前层时,将当前层索引放置在首位
layero.on('mousedown', function () {
var _index = layer.escIndex.indexOf(index);
if (_index !== -1) {
layer.escIndex.splice(_index, 1); //删除原有索引
}
layer.escIndex.unshift(index); //将索引插入到数组首位
});
}
})
}
};
$('#layerDemo .layui-btn').on('click', function(){
var othis = $(this), method = othis.data('method');
active[method] ? active[method].call(this, othis) : '';
});
});
</script>
</body>
</html>
controller里面的方法获取
url: '/admin/index/orders' //后台数据路径
//页面数据
public function orders(){
$par = request()->param();
$page = request()->param('page');
$limit = request()->param('limit');
if (isset($par['key'])){
$data = lists::where('id','like',$par['key']['id'])->whereOr('name','like',$par['key']['name'])->paginate(3)->toArray();
return json(['data'=>$data['data'],'code'=>0,'msg'=>'']);
}else{
$data = lists::paginate($limit)->toArray();
$count = lists::select()->count();
return json(['data'=>$data['data'],'code'=>0,'msg'=>'','count'=>$count]);
}
}
//页面
public function order_list(){
return View::fetch('index/order_list');
}
//全选删除
public function delall()
{
$data = input('get.del');
$id = array_column($data,'id');
$is_show = array_column($data,'is_show');
foreach ($is_show as $k=>$v){
$is = $v;
print_r($is);
if ($is == 0){
$res = Discount::where('id', 'in', $id)->delete();
return json(['data' => $data, 'msg' => '删除成功', 'code' => 0]);
}
}
//return OlyService::delall($is_show,$id);
}
效果图:
版权说明
文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权。版权声明:未标注转载均为本站原创,转载时请以链接形式注明文章出处。如有侵权、不妥之处,请联系站长删除。敬请谅解!