layui 弹窗 分页

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <title>员工管理系统</title>
  <link rel="stylesheet" href="${pageContext.request.contextPath }/layui/css/layui.css">
</head>

<body>

  <div class="layui-container">
    <!-- 上方线 -->
    <div class="layui-progress" style="margin: 15px 0 30px;">
      <div class="layui-progress-bar" lay-percent="100%"></div>
    </div>
    <!-- 表单-->
    <form class="layui-form" id="form1">
      <div class="layui-form-item">
        <!-- 姓名-->
        <div class="layui-inline">
          <label class="layui-form-label">姓名</label>
          <div class="layui-input-inline">
            <input type="tel" name="ename" class="layui-input" id="ename"
              placeholder="请输入姓名">
          </div>
        </div>

        <!-- 入职日期选择 -->
        <div class="layui-inline">
          <label class="layui-form-label">入职日期</label>
          <div class="layui-input-inline">
            <input type="text" class="layui-input" id="startHiredate" placeholder="yyyy-MM-dd" name="startHiredate">
          </div>
          <div class="layui-form-mid">-</div>
          <div class="layui-input-inline">
            <input type="text" class="layui-input" id="endHiredate" placeholder="yyyy-MM-dd" name="endHiredate">
          </div>
        </div>

        <!--查询全部按钮-->
        <button type="button" class="layui-btn" id="selectAll" data-type="reload">查询全部</button>

        <!--搜索按钮-->
        <button type="button" class="layui-btn"  id="select" data-type="reload"><i
            class="layui-icon layui-icon-search"></i></button>


        <!-- 职位-->
        <div class="layui-inline">
          <label class="layui-form-label">职位</label>
          <div class="layui-input-inline">
            <input type="text" name="job" class="layui-input" placeholder="请输入职位"
              id="job">
          </div>
        </div>

        <!-- 薪资范围-->
        <div class="layui-inline">
          <label class="layui-form-label">薪水</label>
          <div class="layui-input-inline" style="width: 100px;">
            <input type="text" name="startSal" placeholder="¥" autocomplete="off" class="layui-input" id="startSal">
          </div>
          <div class="layui-form-mid">-</div>
          <div class="layui-input-inline" style="width: 100px;">
            <input type="text" name="endSal" placeholder="¥" autocomplete="off" class="layui-input" id="endSal">
          </div>
        </div>
        <!-- 下拉框 选择部门 -->
        <div class="layui-inline" style="width=100px">
          <label class="layui-form-label">所属部门</label>
          <div class="layui-input-block">
            <select name="dept.deptno" id="deptno">
              <option value="">直接选择或搜索选择</option>
              <c:forEach items="${allDept}" var="department">
                <option value="${department.deptno}" >${department.dname}</option>
              </c:forEach>
            </select>
          </div>
        </div>
        </div>
    </form>
    
    <!-- 左侧工具栏-->
    <script type="text/html" id="toolbarDemo">
         <button class="layui-btn layuiadmin-btn-role" lay-event="deleteMore">批量删除</button>
         <button class="layui-btn layuiadmin-btn-role" lay-event="add">添加</button>   
    </script>

    <!-- 数据表格-->
    <table class="layui-table" id="test" lay-filter="curd"></table>
    
    <!-- 表格中的操作栏-->
    <script type="text/html" id="barDemo">
          <a class="layui-btn layui-btn-xs"  lay-event="update">修改</a>
		  <a class="layui-btn layui-btn-xs"  lay-event="detail">查看</a>
          <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
    </script>

  </div>
  <!-- 引入 layui.js 的 <script> 标签最好放置在 html 末尾 -->
  <script src="${pageContext.request.contextPath }/layui/layui.js"></script>
  <script>
	
  	//注册组件
    layui.use(function () {
      var layer = layui.layer     
        , form = layui.form       
        , laypage = layui.laypage 
        , element = layui.element
        , laydate = layui.laydate 
        , table = layui.table     
        , dropdown = layui.dropdown
        , $ = layui.jquery
        , util = layui.util;
      

      //日期
      laydate.render({
        elem: '#startHiredate'
      });
      laydate.render({
        elem: '#endHiredate'
      });
      
      //数据表格
   	  table.render({
   	        elem: '#test' //表格id 绑定
   	        , url: "${pageContext.request.contextPath }/employee/findAllEmp"
   	        , title: '用户数据表'
   	        , limit: 2
   	        , limits: [2, 5, 7, 9]   
   	        , toolbar: '#toolbarDemo' //开启头部工具栏 右侧导出一类
   	        , cols: [[
   	          { type: 'checkbox', fixed: 'left' }
   	          , { field: 'empno', title: 'ID', fixed: 'left', unresize: true, sort: true }
   	          , { field: 'ename', title: '员工名', edit: 'text', sort: true }
   	          , { field: 'job', title: '职位', edit: 'text', sort: true }
   	          , { field: 'hiredate', title: '入职日期', edit: 'text', sort: true }
   	          , {
   	            field: 'sal', title: '薪水', sort: true, templet: function (d) {
   	              if (d.sal == null) { //自定义样式
   	                return 0 + "元"
   	              } else {
   	                return d.sal + "元"
   	              }
   	            }
   	          }
   	          , { field: 'comm', title: '奖金', sort: true }
   	          , {
   	            field: 'dept', title: '部门', width: 80, sort: true, templet: function (d) { //外键对象
   	              return d.dept.dname
   	            }
   	          }
   	          , { field: 'right', title: '操作', width: 177, toolbar: "#barDemo" }//操作栏 上述id绑定
   	        ]]
   	        , id: 'testReload' //数据表编号 //重载数据表时候使用
   	        , method: "post"
   	        , page: true //开启分页
   	        , parseData: function (res) { //将原始数据解析成 table 组件所规定的数据 //逻辑分页 内存分页
   	          var result;
   	          if (this.page.curr) {
   	            result = res.data.slice(this.limit * (this.page.curr - 1), this.limit * this.page.curr);
   	          }
   	          else {
   	            result = res.data.slice(0, this.limit);
   	          }
   	          return {
   	            "code": res.code, 
   	            "msg": res.msg, 
   	            "count": res.count, 
   	            "data": result 
   	          };
   	        }

   	      });
   	  //头工具栏事件 
      table.on('toolbar(curd)', function (obj) {
        var checkStatus = table.checkStatus(obj.config.id);
        switch (obj.event) {
          //批量删除
          case 'deleteMore':
            var data = checkStatus.data;
            if (data.length < 1) {
              layer.alert('没有选中项');

            } 
           	var ids = "";
			if (data.length > 0) {
				for (var i = 0; i < data.length; i++) {
					if (i == (data.length - 1)) {
						ids += data[i].empno;
					} else {
						ids += data[i].empno + ",";
					}

				}
              layer.confirm('真的删除所选行么', function (index) {
                $.ajax({
                  type: "post"
                  , url: '${pageContext.request.contextPath}/employee/deleteMoreEmp'
                  , data: { "ids": ids}
                  , success: function (res) {
                	  layer.msg('已删除!', { icon: 1, time: 1500 });
					  table.reload('testReload');
                  },
                  error: function (data) {
						layer.msg('未删除!', { icon: 1, time: 1500 });
				  }
                });
              });
            }
            break;
          //添加
          case 'add':
        	  //弹框
        	  layer.open({
                  type: 2,
                  area: [550+'px', 480+'px'],
                  fix: false, 
                  maxmin: true,
                  shadeClose: true,
                  shade:0.4,
                  title: "添加职员",
                  content: '${pageContext.request.contextPath }/employee/toAddEmp',
              
        	  });
          break;
        };
      });
      //操作栏工具栏
      table.on('tool(curd)', function (obj) { //注:tool 是工具条事件名,curd 表格过滤器绑定
        var data = obj.data 
          , layEvent = obj.event;
        //详情
        if (layEvent === 'detail') {  
          layer.open({
              type: 2,
              area: [550+'px', 480+'px'],
              fix: false, 
              maxmin: true,
              shadeClose: true,
              shade:0.4,
              title: "职员详情",
              content: "${pageContext.request.contextPath }/employee/toShowEmp?empno="+data.empno
          });

        //删除
        } else if (layEvent === 'del') {  
          layer.confirm('确定要删除吗?', function (index) {
            layer.close(index);
            $.ajax({
              type: 'post',
              url: '${pageContext.request.contextPath}/employee/deleteEmp?empno=' + data.empno,
              success: function (data) {
                obj.del(); 
                layer.msg('已删除!', { icon: 1, time: 1000 });
              },
              error: function (data) {
                console.log(data.msg);
              },
            });
          });
        //修改
        } else if (layEvent === 'update') { 
          layer.open({
              type: 2,
              area: [550+'px', 480+'px'],
              fix: false, 
              maxmin: true,
              shadeClose: true,
              shade:0.4,
              title: "修改职员",
              content: "${pageContext.request.contextPath }/employee/toUpdateEmp?empno="+data.empno
          });
        }
      });
      //重载 即多条件查询部分
      var $ = layui.$, active = {
        reload: function () {
          //执行重载
          table.reload('testReload', {
            page: {
              curr: 1 //重新从第 1 页开始
            }
            , where: {
              ename:$('#ename').val(),
              startHiredate: $('#startHiredate').val(),
              endHiredate: $('#endHiredate').val(),
              job: $('#job').val(),
              "dept.deptno": $("#deptno").val(),
              startSal: $('#startSal').val(),
              endSal: $('#endSal').val()

            }
          });
        }
      };
      //查询按钮的点击事件
      $('#select').on('click', function () {
        var type = $(this).data('type');
        active[type] ? active[type].call(this) : '';
      });
      //查询全部点击事件
      $('#selectAll').on('click', function () {
    	 	//document.location.reload();
    	 	$('#form1')[0].reset();
            var type = $(this).data('type');
            active[type] ? active[type].call(this) : '';
        });

    });
  </script>
</body>

</html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>

<head>
	<meta charset="UTF-8">
	<title>Insert title here</title>
	<link rel="stylesheet" href="${pageContext.request.contextPath }/layui/css/layui.css">
</head>

<body>
	<form class="layui-form" id="formId" action="${pageContext.request.contextPath }/employee/addEmp" method="POST">
		<div class="layui-form-item">
			<label class="layui-form-label">员工姓名</label>
			<div class="layui-input-block">
				<input type="text" name="ename" lay-verify="required" lay-reqtext="员工姓名是必填项,不能为空~" autocomplete="off"
					placeholder="请输入姓名" class="layui-input" style="width:100px">
			</div>
		</div>
		<div class="layui-form-item">
			<label class="layui-form-label">职位</label>
			<div class="layui-input-block">
				<input type="text" name="job" lay-verify="required" lay-reqtext="职位是必填项,岂能为空?" placeholder="请输入职位"
					autocomplete="off" style="width:100px" class="layui-input">
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">入职日期</label>
				<div class="layui-input-inline">
					<input type="text" name="hiredate" id="date" lay-verify="date" placeholder="1970-00-00"
						autocomplete="off" class="layui-input">
				</div>
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">薪资</label>
				<div class="layui-input-inline" style="width: 100px;">
					<input type="number" min=0 name="sal" placeholder="¥" required autocomplete="off"
						class="layui-input" lay-reqtext="请输入员工薪资">
				</div>
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">奖金</label>
				<div class="layui-input-inline" style="width: 100px;">
					<input type="number" min=0 name="comm" placeholder="¥" required autocomplete="off"
						class="layui-input" lay-reqtext="请输入员工奖金">
				</div>
			</div>
		</div>

		<div class="layui-form-item" style="width:300px">
			<label class="layui-form-label">所属部门</label>
			<div class="layui-input-block">
				<select name="dept.deptno" lay-filter="aihao">
					<c:forEach items="${allDept}" var="department">
						<option value="${department.deptno}">${department.dname}</option>
					</c:forEach>
				</select>
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-input-block">
				<button class="layui-btn" lay-submit lay-filter="add">添加</button>
				<button type="reset" class="layui-btn layui-btn-primary">重置</button>
			</div>
		</div>
	</form>
<!-- 引入 layui.js 的 <script> 标签最好放置在 html 末尾 -->
<script src="${pageContext.request.contextPath }/layui/layui.js"></script>
<script> 
	layui.use(function () {
		var laydate = layui.laydate
		,form = layui.form
		,$ = layui.jquery
		,layer = layui.layer;
		//日期
		laydate.render({
			elem: '#date'
		});
		 //监听提交
        form.on('submit(add)', function(data){
            $.ajax({
            	url:'${pageContext.request.contextPath}/employee/addEmp',
            	data:data.field,
            	type:'post',
            	success:function(){
		            layer.msg("添加成功", {icon: 6,time:500},function () {
		                // 获得frame索引
		                var index = parent.layer.getFrameIndex(window.name);
		                //关闭当前frame
		                parent.layer.close(index);
                        //修改成功后刷新父界面
                        window.parent.location.reload();
		            });
		            
            	}
            
            });
            return false;
	        
	        
		});
	
		});
</script>
</body>

</html>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>

<head>
	<meta charset="UTF-8">
	<title>Insert title here</title>
	<link rel="stylesheet" href="${pageContext.request.contextPath }/layui/css/layui.css">
</head>
<body>

		<div class="layui-form-item">
			<label class="layui-form-label">员工姓名</label>
			<div class="layui-input-block">
				<input type="text" name="ename" lay-verify="required" lay-reqtext="员工姓名是必填项,不能为空~" autocomplete="off"
					placeholder="请输入姓名" class="layui-input" style="width:100px" disabled  value="${employee.ename}">
			</div>
		</div>
		<div class="layui-form-item">
			<label class="layui-form-label">职位</label>
			<div class="layui-input-block">
				<input type="text" name="job" lay-verify="required" lay-reqtext="职位是必填项,岂能为空?" placeholder="请输入职位"
					autocomplete="off" style="width:100px"  disabled class="layui-input" value="${employee.job}">
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">入职日期</label>
				<div class="layui-input-inline">
					<input type="text" name="hiredate" id="date" lay-verify="date" placeholder="1970-00-00"
						autocomplete="off" class="layui-input" disabled value="${employee.hiredate}">
				</div>
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">薪资</label>
				<div class="layui-input-inline" style="width: 100px;">
					<input type="number" min=0 name="sal" placeholder="¥" required autocomplete="off"
						class="layui-input"  disabled lay-reqtext="请输入员工薪资" value="${employee.sal}">
				</div>
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">奖金</label>
				<div class="layui-input-inline" style="width: 100px;">
					<input type="number" min=0 name="comm" placeholder="¥" required 
						class="layui-input" disabled lay-reqtext="请输入员工奖金" value="${employee.comm}">
				</div>
			</div>
		</div>

		<div class="layui-form-item" style="width:300px">
			<label class="layui-form-label">所属部门</label>
			<div class="layui-input-block">
			<input type="text" min=0 name="comm" placeholder="¥" required autocomplete="off"
						class="layui-input" disabled lay-reqtext="请输入员工奖金" value="${employee.dept.dname}">
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-input-block">
				<button class="layui-btn" id="close" lay-filter="formDemo">关闭</button>
			</div>
		</div>
	</form>
<!-- 引入 layui.js 的 <script> 标签最好放置在 html 末尾 -->
<script src="${pageContext.request.contextPath }/layui/layui.js"></script>
<script> 
	layui.use(['form','layer','laydate'], function () {
		var laydate = layui.laydate
		,form = layui.form
		,$ = layui.jquery
		,layer = layui.layer;
		//日期
		laydate.render({
			elem: '#date'
		});
		$("#close").click(function(){
			console.log(111)
			// 获得frame索引
	        var index = parent.layer.getFrameIndex(window.name);
	        //关闭当前frame
	       	parent.layer.close(index);
	       	//document.location.reload();
		});
	
		});
</script>
</body>

</html>

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<!DOCTYPE html>
<html>

<head>
	<meta charset="UTF-8">
	<title>Insert title here</title>
	<link rel="stylesheet" href="${pageContext.request.contextPath }/layui/css/layui.css">
</head>
<body>
	<form class="layui-form" action="${pageContext.request.contextPath }/employee/updateEmp" method="POST">
		<input type="hidden" name="empno" lay-verify="required" lay-reqtext="员工姓名是必填项,不能为空~" autocomplete="off"
					placeholder="请输入姓名" class="layui-input" style="width:100px" value="${employee.empno}">
		<div class="layui-form-item">
			<label class="layui-form-label">员工姓名</label>
			<div class="layui-input-block">
				<input type="text" name="ename" lay-verify="required" lay-reqtext="员工姓名是必填项,不能为空~" autocomplete="off"
					placeholder="请输入姓名" class="layui-input" style="width:100px" value="${employee.ename}">
			</div>
		</div>
		<div class="layui-form-item">
			<label class="layui-form-label">职位</label>
			<div class="layui-input-block">
				<input type="text" name="job" lay-verify="required" lay-reqtext="职位是必填项,岂能为空?" placeholder="请输入职位"
					autocomplete="off" style="width:100px" class="layui-input" value="${employee.job}">
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">入职日期</label>
				<div class="layui-input-inline">
					<input type="text" name="hiredate" id="date" lay-verify="date" placeholder="1970-00-00"
						autocomplete="off" class="layui-input" value="${employee.hiredate}">
				</div>
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">薪资</label>
				<div class="layui-input-inline" style="width: 100px;">
					<input type="number" min=0 name="sal" placeholder="¥" required autocomplete="off"
						class="layui-input" lay-reqtext="请输入员工薪资" value="${employee.sal}">
				</div>
			</div>
		</div>
		<div class="layui-form-item">
			<div class="layui-inline">
				<label class="layui-form-label">奖金</label>
				<div class="layui-input-inline" style="width: 100px;">
					<input type="number" min=0 name="comm" placeholder="¥" required autocomplete="off"
						class="layui-input" lay-reqtext="请输入员工奖金" value="${employee.comm}">
				</div>
			</div>
		</div>

 		 <!-- 下拉框 选择部门 -->
		<div class="layui-form-item" style="width:300px">
			<label class="layui-form-label">所属部门</label>
			<div class="layui-input-block">
				<select name="dept.deptno" lay-filter="aihao">
					
					<c:forEach items="${allDept}" var="department">
						<option value="${department.deptno}" ${department.deptno==employee.dept.deptno ? "selected":"" } >${department.dname}</option>
					</c:forEach>
				</select>
			</div>
		</div>
		
		<div class="layui-form-item">
			<div class="layui-input-block">
				<button class="layui-btn" lay-submit lay-filter="update">修改</button>
			</div>
		</div>
	</form>
<!-- 引入 layui.js 的 <script> 标签最好放置在 html 末尾 -->
<script src="${pageContext.request.contextPath }/layui/layui.js"></script>
<script> 
	layui.use(function () {
		var laydate = layui.laydate
		,form = layui.form
		,$ = layui.jquery
		,layer = layui.layer;
		//日期
		laydate.render({
			elem: '#date'
		});
		 //监听提交
        form.on('submit(update)', function(data){
            $.ajax({
            	url:'${pageContext.request.contextPath }/employee/updateEmp',
            	data:data.field,
            	type:'post',
            	success:function(){
		            layer.msg("修改成功", {icon: 6,time:500},function () {
		                // 获得frame索引
		                var index = parent.layer.getFrameIndex(window.name);
		                //关闭当前frame
		                parent.layer.close(index);
                        //修改成功后刷新父界面
                        window.parent.location.reload();
		            });
		            
            	}
            
            });
            return false;	        
		});
	
		});
</script>
</body>

</html>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Java123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值