table 模块是layui框架最核心的组成之一。它用于对表格进行一些列功能和动态化数据操作,涵盖了日常业务所涉及的几乎全部需求。
支持固定表头、固定行、固定列左/列右,支持拖拽改变列宽度,支持排序,支持多级表头,支持单元格的自定义模板,支持对表格重载(比如搜索、条件筛选等),支持复选框,支持分页,支持单元格编辑等等一些列功能。
尽管如此,我们仍将对其进行完善,在控制代码量和性能的前提下,不定期增加更多人性化功能。table 模块也将是 layui 重点维护的项目之一。
layui渲染table数据表格示例:
1、引入layui的css和js文件
link rel="stylesheet" href="lib/layui/css/layui.css"> <script src="lib/layui/layui.js"></script>
2、在页面放置一个table元素
<table class="layui-hide" id="test" lay-filter='test3'></table>
3、通过 table.render() 方法指定该容器
layui.use('table', function(){ var table = layui.table; // var playerName; // if(item != undefined) { // playerName=item; // } table.render({ elem: '#test' table 容器的选择器或 DOM ,url:'http://boss.superlychee.com/rest/web/golfTourManage/getGolfTourPlayerByTourIdAndRounds' ,method:'post' ,where:{tourId:tourIds,rounds:rounds,playerName:item} ,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增 ,cols: [[ {field:'tourPlayerId', width:80, title: 'ID1', sort: true} ,{field:'playerName', width:80, title: '姓名'} ,{field:'hole1', title: '1',edit: 'text'} ,{field:'hole2', title: '2',edit: 'text'} ,{field:'hole3', title: '3',edit: 'text'} //minWidth:局部定义当前单元格的最小宽度,layui 2.2.1 新增 ,{field:'hole4', title: '4',edit: 'text'} ,{field:'hole5', title: '5',edit: 'text'} ,{field:'hole6', title: '6',edit: 'text'} ,{field:'hole7', title: '7',edit: 'text'} ,{field:'hole8', title: '8',edit: 'text'} ,{field:'hole9', title: '9',edit: 'text'} ,{field:'hole10', title: '10',edit: 'text'} ,{field:'hole11', title: '11',edit: 'text'} ,{field:'hole12', title: '12',edit: 'text'} ,{field:'hole13', title: '13',edit: 'text'} ,{field:'hole14', title: '14',edit: 'text'} ,{field:'hole15', title: '15',edit: 'text'} ,{field:'hole16', title: '16',edit: 'text'} ,{field:'hole17', title: '17',edit: 'text'} ,{field:'hole18', title: '18',edit: 'text'} ,{field:'add', title: '操作', width:177,toolbar:"#barDemo"}
4、这个时候你的页面差不多就是以下这个样子了
5、正文到了,怎么把表格数据渲染进去呢?咱们上面第三部就是渲染的一中方法,叫“方法渲染”,layui官网提供的三种渲染
方法,在这里不做陈述,方法渲染的优点是:你可以脱离HTML文件,而专注于JS本身。尤其对于项目的频繁改动及发布,其便捷性会体现得更为明显,
layui的url默认是“get”请求,我这边是post请求,所以记得加上“method”属性为post,
6、容易碰到的问题,按理来说这个时候应该已经可以看到表格数据了,为什么大多数人的表格还是渲染不出来呢?一般是因为你妹配置后台数据格式
response: { statusName: 'code' //数据状态的字段名称,默认:code ,statusCode: 200 //成功的状态码,默认:0 ,msgName: 'msg' //状态信息的字段名称,默认:msg ,countName: 'count' //数据总数的字段名称,默认:count ,dataName: 'data' //数据列表的字段名称,默认:data
效果如下:
Atas ialah kandungan terperinci 使用layui渲染table数据表格(实例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!