table 数据表格文档 - layui.table

在 layui 2.0 的版本中全新推出,是 layui 最核心的组成之一。它用于对表格进行一些列功能和动态化数据操作,涵盖了日常业务所涉及的几乎全部需求。支持固定表头、固定行、固定列左/列右,支持拖拽改变列宽度,支持排序,支持多级表头,支持单元格的自定义模板,支持对表格重载(比如搜索、条件筛选等),支持复选框,支持分页,支持单元格编辑等等一些列功能.

table.html

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		  <link rel="stylesheet" href="../layui/css/layui.css" media="all"/>
	</head>
	<body>
		<div style="width: 800px;">
		<table id="demo" lay-filter="filterDemo"></table>
		</div>
		<script src="../layui/layui.js"></script>
		<script>
		layui.use('table', function(){
		  var table = layui.table;
		  
		  //第一个实例
		  table.render({
		    elem: '#demo',
			width:'800px',
		    url:"../json/tabledata.json",
		    page: true //开启分页
		    ,cols: [[ //表头
						  {field: '', title: '', type:'checkbox', LAY_CHECKED:true, fixed: 'left',width:'50'}
						  ,{field:'',title:'序号',type:'numbers',width:'50'}
						  ,{field:'id',title:'ID',sort:true,width:'100'}
						  ,{field: 'username', title: '用户名', edit:true,width:'100'}
						  ,{field: 'pwd', title: '密码',width:'100'}
						  ,{field: 'sex', title: '性别',templet:'#sextemp',width:'100'},
						  {field: '',width:'295',title:'操作',toolbar:'#tooldemo'}
						]],
			toolbar:"#bardemo"
		  }),
		  
		  //tool监听
		  table.on('tool(filterDemo)',function(obj){
			if(obj.event === 'detail'){
				layer.msg("查看");
			}else if(obj.event === 'edit'){
				layer.msg("编辑");
			}else if(obj.event){
				layer.confirm('真的要删除吗?',function(index){
					obj.tr.remove();
					layer.close(index);
				})
			}
		  }),
		  
		  table.on('toolbar(filterDemo)',function(obj){
			  var event = obj.event;
			  if(event === 'delall'){
				  var ss = table.checkStatus('demo');//选中对应id的值
				  var leg = ss.data.length;
				  var cs =  table.checkStatus('demo');
				  layer.confirm("确定删除选中的"+leg+"数据吗",function(index){
					  //删除
					  
					  //服务器删除
					  
					  //关闭
					  layer.close(index);
					  
					  //刷新表格
					  table.reload('demo',function(){
						  where:{}
					  })
				  })
			  }else if(event === 'add'){
				  layer.open({
					  type:2,
					  title:"添加",
					  content:"add.html",
					  area:['80%','80%']
				  })
			  }
			  
		  })
			
			
			
		});
		</script>
		<script type="text/html" id="tooldemo">
			<a class="layui-btn layui-btn-xs" lay-event="detail">查看</a>
			<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
			<a class="layui-btn layui-btn-xs" lay-event="del">删除</a>
		</script>
		
		<script type="text/html" id="bardemo">
			<button type="button" class="layui-btn layui-btn-xs" lay-event="delall">全部删除</button>
			<button type="button" class="layui-btn layui-btn-xs" lay-event="add">添加</button>
		</script>
		
<!-- 		<script type="text/html" id="sextemp">
			
			{{#
				if('sex' == 1){
					return '男';
				}
				else if('sex' == 0){
					return '女';
				}
			}}
		</script> -->
	</body>
</html>

table.json

{
	"code":0,
	"msg":"",
	"count":2,
	"data":[{
		"id":"001",
		"username":"111",
		"pwd":"111",
		"sex":"男"
	},{
		"id":"002",
		"username":"111",
		"pwd":"111",
		"sex":"女"
	}
	]
}

效果图:

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
layui 中,可以通过 `cols` 参数来设置表格的列配置,包括表头和数据列的配置。在 `cols` 中,可以通过嵌套对象来实现多级表头的配置。 下面是一个示例代码: ```javascript layui.use(['table'], function(){ var table = layui.table; table.render({ elem: '#test', cols: [ [ {field: 'id', rowspan: 2, title: 'ID'}, {field: 'username', rowspan: 2, title: '用户名'}, {field: 'sex', rowspan: 2, title: '性别'}, {title: '联系方式', colspan: 2}, {title: '其它信息', colspan: 3} ], [ {field: 'email', title: '邮箱'}, {field: 'phone', title: '手机'}, {field: 'address', title: '地址'}, {field: 'ip', title: 'IP'}, {field: 'remark', title: '备注'} ] ], data: [ {id: 1, username: '张三', sex: '男', email: 'zhangsan@qq.com', phone: '13812345678', address: '北京市', ip: '192.168.1.1', remark: '无'}, {id: 2, username: '李四', sex: '女', email: 'lisi@qq.com', phone: '13987654321', address: '上海市', ip: '192.168.1.2', remark: '无'} ] }); }); ``` 在上面的代码中,通过 `cols` 参数设置了一个多级表头,包括两行表头和五列数据列。其中,第一行表头包括了三个单元格和两个多列单元格,第二行表头包括了五个单元格。 在单元格的配置中,可以通过 `rowspan` 和 `colspan` 属性来设置单元格所占的行数和列数。如果一个单元格同时设置了 `rowspan` 和 `colspan`,则它将会占据多行多列。 除了多级表头之外,还可以通过 `fixed` 属性来设置固定列和固定表头。具体的用法可以参考 layui 的官方文档

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

wait wait

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

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

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

打赏作者

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

抵扣说明:

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

余额充值