layui 案例
案例
DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>个人资料管理title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta http-equiv="Access-Control-Allow-Origin" content="*">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="format-detection" content="telephone=no">
<link rel="icon" href="/favicon.ico">
<link rel="stylesheet" href="/resources/layui/css/layui.css" media="all"/>
<link rel="stylesheet" href="/resources/css/public.css" media="all"/>
<link rel="stylesheet" href="/resources/layui_ext/dtree/dtree.css" media="all"/>
<link rel="stylesheet" href="/resources/layui_ext/dtree/font/dtreefont.css" media="all"/>
head>
<body class="childrenBody">
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 5px;">
<legend>我的个人资料legend>
fieldset>
<div>
<table class="layui-hide" id="userTable" lay-filter="userTable">table>
<div id="userToolBar" style="display: none;">
<button type="button" lay-event="add" class="layui-btn layui-btn-sm">
<span class="layui-icon layui-icon-add-1">span>添加人员
button>
div>
<div id="userRowBar" style="display: none;">
<button type="button" lay-event="update" class="layui-btn layui-btn-sm">
<span class="layui-icon layui-icon-edit">span>更新
button>
<button type="button" lay-event="resetPwd" class="layui-btn layui-btn-sm">
<span class="layui-icon layui-icon-edit">span>重置密码
button>
div>
div>
<div style="display: none;padding: 5px" id="addOrUpdateDiv">
<form action="" method="post" class="layui-form layui-form-pane" id="dataFrm" lay-filter="dataFrm">
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">用户姓名label>
<div class="layui-input-inline">
<input type="text" name="name" id="username" lay-verify="required" autocomplete="off" placeholder="请输入用户姓名" class="layui-input">
div>
div>
<div class="layui-inline">
<label class="layui-form-label">登陆名称label>
<div class="layui-input-inline">
<input type="text" name="loginname" id="loginname" lay-verify="required" autocomplete="off" placeholder="请输入登陆名称" class="layui-input">
div>
div>
div>
<div class="layui-form-item">
<label class="layui-form-label">用户地址label>
<div class="layui-input-block">
<input type="text" name="address" autocomplete="off" placeholder="请输入用户用地址" class="layui-input">
div>
div>
<div class="layui-form-item">
<label class="layui-form-label">用户备注label>
<div class="layui-input-block">
<textarea class="layui-textarea" name="remark" id="content">textarea>
div>
div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">用户性别label>
<div class="layui-input-inline">
<input type="radio" name="sex" value="1" title="男" checked="">
<input type="radio" name="sex" value="0" title="女">
div>
div>
<div class="layui-inline">
<label class="layui-form-label">是否可用label>
<div class="layui-input-inline">
<input type="radio" name="available" value="1" title="可用" checked="">
<input type="radio" name="available" value="0" title="不可用">
div>
div>
div>
<div class="layui-form-item">
<div class="layui-input-block" style="text-align: center;">
<button type="button" class="layui-btn" lay-submit="" lay-filter="doSubmit">
<span class="layui-icon layui-icon-add-1">span>提交
button>
<button type="reset" class="layui-btn layui-btn-warm">
<span class="layui-icon layui-icon-refresh-1">span>重置
button>
div>
div>
form>
div>
<script type="text/javascript" src="/resources/layui/layui.js">script>
<script type="text/javascript">
var tableIns;
layui.extend({
dtree: '/resources/layui_ext/dtree/dtree' // {/}的意思即代表采用自有路径,即不跟随 base 路径
}).use(['jquery', 'form', 'table', 'layer', 'dtree'], function () {
var $ = layui.jquery;
var form = layui.form;
var table = layui.table;
var layer = layui.layer;
var dtree = layui.dtree;
//加载 数据
tableIns = table.render({
elem: '#userTable'
, url: '/user/loadPersonalInfo'
, toolbar: '#userToolBar' //开启头部工具栏,并为其绑定左侧模板
, title: '部门数据表'
, height: 'full-250'
, page: true
, cols: [
[
{field: 'id', title: 'ID', align: 'center', width: '80'}
, {field: 'name', title: '用户姓名', align: 'center', width: '100'}
, {field: 'loginname', title: '昵称', align: 'center', width: '100'}
, {field: 'sex', title: '性别', align: 'center', width: '80'}
, {field: 'email', title: '邮箱', align: 'center', width: '120'}
, {field: 'phone', title: '手机号码', align: 'center', width: '100'}
, {field: 'fullAddress', title: '详细地址', align: 'center', width: '150'}
, {field: 'remark', title: '个人说明', align: 'center', width: '150'}
, {field: 'age', title: '年龄', align: 'center', width: '180'}
, {fixed: 'right', title: '操作', toolbar: '#userRowBar', align: 'center', width: '400'}
]
]
, done: function (res, curr, count) { //处理删除某一页最后一条数据的BUG
if (res.data.length == 0 && curr != 1) {
tableIns.reload({
page: {
curr: (curr - 1)
}
});
}
}
});
//监听工具条的事件
table.on("toolbar(userTable)", function (obj) {
switch (obj.event) {
case 'add':
openAddLayer();
break;
}
;
});
//监听行工具条的事件
table.on("tool(userTable)", function (obj) {
var data = obj.data; //获得当前行数据
switch (obj.event) {
case 'update':
openUpdateUserLayer(data);
break;
case 'resetPwd':
resetPwd(data);
break;
}
;
});
var mainIndex;
var url;
//打开添加的弹出层
function openAddLayer() {
mainIndex = layer.open({
type: 1,
content: $("#addOrUpdateDiv"),
area: ['800px', '600px'],
title: '添加用户',
success: function () {
$("#dataFrm")[0].reset();
url = "/user/addUser";
}
});
}
//打开修改的弹出层
function openUpdateUserLayer(data) {
mainIndex = layer.open({
type: 1,
content: $("#addOrUpdateDiv"),
area: ['800px', '600px'],
title: '修改用户资料',
success: function () {
$("#dataFrm")[0].reset();
form.val("dataFrm", data);
url = "/user/updateUser";
}
});
}
// 添加和更改的提交
form.on("submit(doSubmit)", function (data) {
$.post(url, data.field, function (res) {
if (res.code == 200) {
tableIns.reload();
}
layer.msg(res.msg);
layer.close(mainIndex);
});
return false;
});
//重置密码
function resetPwd(data) {
layer.confirm('你确定要重置【' + data.name + '】这个用户密码吗?', {icon: 3, title: '提示'}, function (index) {
$.post("/user/resetPwd", {id: data.id}, function (res) {
layer.msg(res.msg);
});
layer.close(index);
});
}
});
script>
body>
html>