!37 增加dropdown的demo

Merge pull request !37 from SAssassin/features/dropdown
develop
就眠仪式 2021-01-23 20:07:04 +08:00 committed by Gitee
commit 705ec9c94a
2 changed files with 309 additions and 278 deletions

View File

@ -17,7 +17,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
}, { }, {
"userId": "442488661347536896", "userId": "2",
"username": "854085467", "username": "854085467",
"password": null, "password": null,
"salt": null, "salt": null,
@ -31,7 +31,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
}, { }, {
"userId": "442492965651353600", "userId": "3",
"username": "970796069", "username": "970796069",
"password": null, "password": null,
"salt": null, "salt": null,
@ -45,7 +45,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
},{ },{
"userId": "1", "userId": "4",
"username": "admin", "username": "admin",
"password": "$2a$10$1K7E1.IYCrsoZVCb6utOo.5jENtfOzhdKWhc49t2lk.UQd7Oam4FG", "password": "$2a$10$1K7E1.IYCrsoZVCb6utOo.5jENtfOzhdKWhc49t2lk.UQd7Oam4FG",
"salt": null, "salt": null,
@ -59,7 +59,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
}, { }, {
"userId": "442488661347536896", "userId": "5",
"username": "854085467", "username": "854085467",
"password": null, "password": null,
"salt": null, "salt": null,
@ -73,7 +73,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
}, { }, {
"userId": "442492965651353600", "userId": "6",
"username": "970796069", "username": "970796069",
"password": null, "password": null,
"salt": null, "salt": null,
@ -87,7 +87,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
},{ },{
"userId": "1", "userId": "7",
"username": "admin", "username": "admin",
"password": "$2a$10$1K7E1.IYCrsoZVCb6utOo.5jENtfOzhdKWhc49t2lk.UQd7Oam4FG", "password": "$2a$10$1K7E1.IYCrsoZVCb6utOo.5jENtfOzhdKWhc49t2lk.UQd7Oam4FG",
"salt": null, "salt": null,
@ -101,7 +101,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
}, { }, {
"userId": "442488661347536896", "userId": "8",
"username": "854085467", "username": "854085467",
"password": null, "password": null,
"salt": null, "salt": null,
@ -115,7 +115,7 @@
"login": "1", "login": "1",
"roleIds": null "roleIds": null
}, { }, {
"userId": "442492965651353600", "userId": "9",
"username": "970796069", "username": "970796069",
"password": null, "password": null,
"salt": null, "salt": null,

View File

@ -1,286 +1,317 @@
<!DOCTYPE html> <!DOCTYPE html>
<html> <html>
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title></title> <title></title>
<link rel="stylesheet" href="../../component/pear/css/pear.css" /> <link rel="stylesheet" href="../../component/pear/css/pear.css" />
</head> </head>
<body> <body class="pear-container">
<body class="pear-container"> <div class="layui-card">
<div class="layui-card"> <div class="layui-card-body">
<div class="layui-card-body"> <form class="layui-form" action="">
<form class="layui-form" action=""> <div class="layui-form-item">
<div class="layui-form-item"> <label class="layui-form-label">用户名</label>
<label class="layui-form-label">用户名</label> <div class="layui-input-inline">
<div class="layui-input-inline"> <input type="text" name="realName" placeholder="" class="layui-input">
<input type="text" name="realName" placeholder="" class="layui-input"> </div>
</div> <label class="layui-form-label">账号</label>
<label class="layui-form-label">账号</label> <div class="layui-input-inline">
<div class="layui-input-inline"> <input type="text" name="username" placeholder="" class="layui-input">
<input type="text" name="username" placeholder="" class="layui-input"> </div>
</div> <button class="pear-btn pear-btn-md pear-btn-primary" lay-submit lay-filter="user-query">
<button class="pear-btn pear-btn-md pear-btn-primary" lay-submit lay-filter="user-query"> <i class="layui-icon layui-icon-search"></i>
<i class="layui-icon layui-icon-search"></i> 查询
查询 </button>
</button> <button type="reset" class="pear-btn pear-btn-md">
<button type="reset" class="pear-btn pear-btn-md"> <i class="layui-icon layui-icon-refresh"></i>
<i class="layui-icon layui-icon-refresh"></i> 重置
重置 </button>
</button>
</div>
</form>
</div> </div>
</div> </form>
<div class="layui-card">
<div class="layui-card-body">
<table id="user-table" lay-filter="user-table"></table>
</div>
</div>
</body>
<script type="text/html" id="user-toolbar">
<button class="pear-btn pear-btn-primary pear-btn-md" lay-event="add">
<i class="layui-icon layui-icon-add-1"></i>
新增
</button>
<button class="pear-btn pear-btn-danger pear-btn-md" lay-event="batchRemove">
<i class="layui-icon layui-icon-delete"></i>
删除
</button>
</script>
<script type="text/html" id="user-bar">
<button class="pear-btn pear-btn-primary pear-btn-sm" lay-event="edit"><i class="layui-icon layui-icon-edit"></i></button>
<button class="pear-btn pear-btn-danger pear-btn-sm" lay-event="remove"><i class="layui-icon layui-icon-delete"></i></button>
</script>
<script type="text/html" id="user-enable">
<input type="checkbox" name="enable" value="{{d.id}}" lay-skin="switch" lay-text="启用|禁用" lay-filter="user-enable" checked = "{{ d.enable == 0 ? 'true' : 'false' }}">
</script>
<script type="text/html" id="user-sex">
{{#if (d.sex == 1) { }}
<span></span>
{{# }else if(d.sex == 2){ }}
<span></span>
{{# } }}
</script>
<script type="text/html" id="user-login">
{{#if (d.login == 0) { }}
<span>在线</span>
{{# }else if(d.sex == 1){ }}
<span>离线</span>
{{# } }}
</script>
<script type="text/html" id="user-createTime">
{{layui.util.toDateString(d.createTime, 'yyyy-MM-dd')}}
</script>
<div class="layer-top">
<br />
<h3>上侧弹层内容...</h3>
</div> </div>
</div>
<div class="layui-card">
<div class="layui-card-body">
<table id="user-table" lay-filter="user-table"></table>
</div>
</div>
<script src="../../component/layui/layui.js"></script> <script type="text/html" id="user-toolbar">
<script src="../../component/pear/pear.js"></script> <button class="pear-btn pear-btn-primary pear-btn-md" lay-event="add">
<script> <i class="layui-icon layui-icon-add-1"></i>
layui.use(['table', 'form', 'jquery','drawer'], function() { 新增
let table = layui.table; </button>
let form = layui.form; <button class="pear-btn pear-btn-danger pear-btn-md" lay-event="batchRemove">
let $ = layui.jquery; <i class="layui-icon layui-icon-delete"></i>
let drawer = layui.drawer; 删除
</button>
</script>
let MODULE_PATH = "/system/user/"; <script type="text/html" id="user-bar">
<button class="pear-btn pear-btn-primary pear-btn-sm" lay-event="edit"><i class="layui-icon layui-icon-edit"></i></button>
<button class="pear-btn pear-btn-danger pear-btn-sm" lay-event="remove"><i class="layui-icon layui-icon-delete"></i></button>
<button class="pear-btn pear-btn-sm" id="more{{d.userId}}"><i class="layui-icon layui-icon-triangle-d"></i></button>
</script>
let cols = [ <script type="text/html" id="user-enable">
[{ <input type="checkbox" name="enable" value="{{d.id}}" lay-skin="switch" lay-text="启用|禁用" lay-filter="user-enable" checked = "{{ d.enable == 0 ? 'true' : 'false' }}">
type: 'checkbox' </script>
},
{ <script type="text/html" id="user-sex">
title: '账号', {{#if (d.sex == 1) { }}
field: 'username', <span></span>
align: 'center', {{# }else if(d.sex == 2){ }}
width: 100 <span></span>
}, {{# } }}
{ </script>
title: '姓名',
field: 'realName', <script type="text/html" id="user-login">
align: 'center' {{#if (d.login == 0) { }}
}, <span>在线</span>
{ {{# }else if(d.sex == 1){ }}
title: '性别', <span>离线</span>
field: 'sex', {{# } }}
align: 'center', </script>
width: 80,
templet: '#user-sex' <script type="text/html" id="user-createTime">
}, {{layui.util.toDateString(d.createTime, 'yyyy-MM-dd')}}
{ </script>
title: '电话',
field: 'phone', <script type="text/plain" id="moreTool">
align: 'center' [
}, [{txt: "Progerss", event: "progress"}]
{ [{txt: "Resolve", event: "resolve"}]
title: '启用', [{txt: "Reopen", event: "reopen"}]
field: 'enable', [{txt: "Close", event: "close"}]
align: 'center', ]
templet: '#user-enable' </script>
},
{ <div class="layer-top"">
title: '登录', <br />
field: 'login', <h3>上侧弹层内容...</h3>
align: 'center', </div>
templet: '#user-login'
}, <script src="../../component/layui/layui.js"></script>
{ <script src="../../component/pear/pear.js"></script>
title: '注册', <script>
field: 'createTime', layui.use(['table', 'form', 'jquery','drawer','dropdown'], function() {
align: 'center', let table = layui.table;
templet: '#user-createTime' let form = layui.form;
}, let $ = layui.jquery;
{ let drawer = layui.drawer;
title: '操作', let dropdown = layui.dropdown;
toolbar: '#user-bar',
align: 'center', let MODULE_PATH = "/system/user/";
width: 130
} let cols = [
] [{
type: 'checkbox'
},
{
title: '账号',
field: 'username',
align: 'center',
width: 100
},
{
title: '姓名',
field: 'realName',
align: 'center'
},
{
title: '性别',
field: 'sex',
align: 'center',
width: 80,
templet: '#user-sex'
},
{
title: '电话',
field: 'phone',
align: 'center'
},
{
title: '启用',
field: 'enable',
align: 'center',
templet: '#user-enable'
},
{
title: '登录',
field: 'login',
align: 'center',
templet: '#user-login'
},
{
title: '注册',
field: 'createTime',
align: 'center',
templet: '#user-createTime'
},
{
title: '操作',
toolbar: '#user-bar',
align: 'left',
width: 170
}
] ]
]
table.render({ table.render({
elem: '#user-table', elem: '#user-table',
url: '../../admin/data/table.json', url: '../../admin/data/table.json',
page: true, page: true,
cols: cols, cols: cols,
skin: 'line', skin: 'line',
toolbar: '#user-toolbar', toolbar: '#user-toolbar',
defaultToolbar: [{ defaultToolbar: [{
layEvent: 'refresh', layEvent: 'refresh',
icon: 'layui-icon-refresh', icon: 'layui-icon-refresh',
}, 'filter', 'print', 'exports'] }, 'filter', 'print', 'exports'],
}); done: function (res) {
for (var i = 0; i < res.data.length; i++) {
if (res.data[i].userId == "5" || res.data[i].userId == "8") {
$("#more" + res.data[i].userId).hide();
continue;
}
table.on('tool(user-table)', function(obj) { dropdown.suite("#more" + res.data[i].userId, {
if (obj.event === 'remove') { align:'left',
window.remove(obj); data: res.data[i],
} else if (obj.event === 'edit') { templateMenu: "moreTool",
window.edit(obj);
}
});
table.on('toolbar(user-table)', function(obj) {
if (obj.event === 'add') {
window.add();
} else if (obj.event === 'refresh') {
window.refresh();
} else if (obj.event === 'batchRemove') {
window.batchRemove(obj);
}
});
form.on('submit(user-query)', function(data) {
table.reload('user-table', {
where: data.field
})
return false;
});
form.on('switch(user-enable)', function(obj) {
layer.tips(this.value + ' ' + this.name + '' + obj.elem.checked, obj.othis);
});
window.add = function() {
drawer.open({
direction: "top",
dom: ".layer-top",
distance: "30%"
});
}
window.edit = function(obj) {
layer.msg("修改");
}
window.remove = function(obj) {
layer.confirm('确定要删除该用户', {
icon: 3,
title: '提示'
}, function(index) {
layer.close(index);
let loading = layer.load();
$.ajax({
url: MODULE_PATH + "remove/" + obj.data['userId'],
dataType: 'json',
type: 'delete',
success: function(result) {
layer.close(loading);
if (result.success) {
layer.msg(result.msg, {
icon: 1,
time: 1000
}, function() {
obj.del();
});
} else {
layer.msg(result.msg, {
icon: 2,
time: 1000
});
}
}
})
});
}
window.batchRemove = function(obj) {
let data = table.checkStatus(obj.config.id).data;
if (data.length === 0) {
layer.msg("未选中数据", {
icon: 3,
time: 1000
}); });
return false;
} }
let ids = "";
for (let i = 0; i < data.length; i++) {
ids += data[i].userId + ",";
}
ids = ids.substr(0, ids.length - 1);
layer.confirm('确定要删除这些用户', {
icon: 3,
title: '提示'
}, function(index) {
layer.close(index);
let loading = layer.load();
$.ajax({
url: MODULE_PATH + "batchRemove/" + ids,
dataType: 'json',
type: 'delete',
success: function(result) {
layer.close(loading);
if (result.success) {
layer.msg(result.msg, {
icon: 1,
time: 1000
}, function() {
table.reload('user-table');
});
} else {
layer.msg(result.msg, {
icon: 2,
time: 1000
});
}
}
})
});
} }
});
window.refresh = function(param) { table.on('tool(user-table)', function(obj) {
table.reload('user-table'); if (obj.event === 'remove') {
window.remove(obj);
} else if (obj.event === 'edit') {
window.edit(obj);
} else if (obj.event === "progress") {
layer.msg(obj.event);
} else if (obj.event === "resolve") {
layer.msg(obj.event);
} else if (obj.event === "reopen") {
layer.msg(obj.event);
} else if (obj.event === "close") {
layer.msg(obj.event);
} }
}) });
</script>
</body> table.on('toolbar(user-table)', function(obj) {
if (obj.event === 'add') {
window.add();
} else if (obj.event === 'refresh') {
window.refresh();
} else if (obj.event === 'batchRemove') {
window.batchRemove(obj);
}
});
form.on('submit(user-query)', function(data) {
table.reload('user-table', {
where: data.field
})
return false;
});
form.on('switch(user-enable)', function(obj) {
layer.tips(this.value + ' ' + this.name + '' + obj.elem.checked, obj.othis);
});
window.add = function() {
drawer.open({
direction: "top",
dom: ".layer-top",
distance: "30%"
});
}
window.edit = function(obj) {
layer.msg("修改");
}
window.remove = function(obj) {
layer.confirm('确定要删除该用户', {
icon: 3,
title: '提示'
}, function(index) {
layer.close(index);
let loading = layer.load();
$.ajax({
url: MODULE_PATH + "remove/" + obj.data['userId'],
dataType: 'json',
type: 'delete',
success: function(result) {
layer.close(loading);
if (result.success) {
layer.msg(result.msg, {
icon: 1,
time: 1000
}, function() {
obj.del();
});
} else {
layer.msg(result.msg, {
icon: 2,
time: 1000
});
}
}
})
});
}
window.batchRemove = function(obj) {
let data = table.checkStatus(obj.config.id).data;
if (data.length === 0) {
layer.msg("未选中数据", {
icon: 3,
time: 1000
});
return false;
}
let ids = "";
for (let i = 0; i < data.length; i++) {
ids += data[i].userId + ",";
}
ids = ids.substr(0, ids.length - 1);
layer.confirm('确定要删除这些用户', {
icon: 3,
title: '提示'
}, function(index) {
layer.close(index);
let loading = layer.load();
$.ajax({
url: MODULE_PATH + "batchRemove/" + ids,
dataType: 'json',
type: 'delete',
success: function(result) {
layer.close(loading);
if (result.success) {
layer.msg(result.msg, {
icon: 1,
time: 1000
}, function() {
table.reload('user-table');
});
} else {
layer.msg(result.msg, {
icon: 2,
time: 1000
});
}
}
})
});
}
window.refresh = function(param) {
table.reload('user-table');
}
})
</script>
</body>
</html> </html>