<table lay-filter="demo" class="layui-table" id="excTable"> <thead> <tr > <th lay-data="{field:'emp_ICNumber', 150, sort:true}">工号</th> <th lay-data="{field:'emp_Name', 150, sort:true}">姓名</th> <th lay-data="{field:'emp_WorkTeam', 100, sort:true}">班次</th> <th lay-data="{field:'emp_AlcoholStatus', 100, sort:true}">考勤方式</th> <th lay-data="{field:'emp_Cause', 150, sort:true}">考勤状态</th> <th lay-data="{field:'emp_TestDateTime', 200, sort:true}">考勤时间</th> <th lay-data="{field:'emp_workHours', 100, sort:true}">工时</th> </tr> </thead> <tbody> <c:forEach items="${maps[0].attences}" var="model"> <tr> <%--<td style="display: none">${model.id}</td>--%> <td>${model.emp_ICNumber}</td> <td>${model.emp_Name}</td> <td>${model.emp_WorkTeam}</td> <c:if test="${model.emp_AlcoholStatus=='0'}"> <td>正常</td> </c:if> <c:if test="${model.emp_AlcoholStatus=='1'}"> <td>饮酒</td> </c:if> <c:if test="${model.emp_AlcoholStatus=='2'}"> <td>醉酒</td> </c:if> <c:if test="${model.emp_AlcoholStatus=='4'}"> <td>手动添加,未监测</td> </c:if> <td>${model.emp_Cause}</td> <td>${model.emp_TestDateTime}</td> <td>${model.emp_workHours}</td> </tr> </c:forEach> </tbody> </table> </tr> </table>
表格代码如上,因为有些未使用接口的原因,数据并非是JSON字符串传输到前台,而是绑定的方式,所以生成了静态表格,而layui很多方法都是基于数据表格的,而且layui有方法将静态表格转换成数据表格,然后就可以使用数据表格的所有方法啦。
在<th>中增加属性
lay-data="{field:'emp_ICNumber', 150, sort:true}"
上面代码是我使用的属性:字段的名称,宽度,以及是否使用筛选功能。不需要筛选的可以不使用sort属性。
然后就是js和css的代码了
<% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; %> <!--头部加上这个是为了获取项目的地址--> <link rel="stylesheet" href="<%=basePath %>lib/layui/css/layui.css"> <script type="text/javascript" src="<%=basePath %>js/jquery.min.js"></script> <script src="<%=basePath %>lib/layui/layui.js" charset="utf-8"></script>
由于layui是基于jquery的,所以一般还得引用jquery文件,然后是layui的js以及css文件。
<script> layui.use(['laydate','table'], function () { var table = layui.table; //转换静态表格 table.init('demo', { height: 330 //设置高度 ,limit: 10 //注意:请务必确保 limit 参数(默认:10)是与你服务端限定的数据条数一致 ,page: true //开启分页 //支持所有基础参数 }); }); </script>
代码如上,必须先使用layui.use方法引用table组件,并将方法赋给table,然后才能使用table.init方法。
然后这个是将table转换成数据表格的内置方法init(初始化) 表格<table>中使用属性 lay-filter="demo" 然后方法中初始化这个静态表格。接下来就是