Layui<table>数据表格之外的数据渲染

有些时间使用layui渲染表格数据,可能不仅需要渲染table,也有可能需要做各种统计或者其他操作,这个时候值就不方便渲染。

找了很久解决办法,终的大悟,其实很简单,只需要引用layui的parseData 插件就可以实现,下面有例子!

var tableIns = table.render({
		elem : '#adminList',
		url : '',
		cellMinWidth : 95,
		page : true,
		method : 'post',
		height : "full-175",
		loading : true,
		id : "adminListTable",
		parseData : function(res) { //res 即为原始返回的数据
			$(".sum").val(res.data.sum);
			return {
				"code" : res.code, //解析接口状态
				"msg" : res.msg, //解析提示文本
				"count" : res.count, //解析数据长度
				"data" : res.data.listData //解析数据列表
			};
		},
		cols : [ [
				{type : "checkbox",fixed : "left",width : 50},
				{field : 'title',title : '房源标题',minWidth : 100,align : "center"},
				{field : 'quota',title : '期望金额(万元)',minWidth : 100,align : "center"},
				{field : 'name',title : '用款人姓名',minWidth : 100,align : "center"},
				{field : 'nikeName',title : '用款人昵称',minWidth : 100,align : "center"},
				{field : 'count',title : '房源投标量',minWidth : 100,align : "center"},
				{field : 'cost',title : '房源总收入(元)',minWidth : 100,align : "center"},
				{field : 'operationTime',title : '发布时间',minWidth : 165,align : "center"},
				{field : 'status',title : '房源状态',align : 'center',width : 100,
					templet : function(d) {
						var js = d.status;
						if (js == 0) {
							return "正常";
						} else if (js == 1) {
							return "结束";
						}
					}
				},
				{title : '操作',minWidth : 175,templet : '#adminListBar',fixed : "right",align : "center"}
			] ]
	});
查询前
刚进入时
2
条件过滤后

注意事项:该插件为 layui 2.4.0 开始新增!抓紧去更新尝试把!layui官网

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1. 编写HTML页面 在HTML页面中,我们需要引入layui框架和jQuery库,并创建一个table元素,用于展示数据。 ``` <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>动态查询</title> <link rel="stylesheet" href="layui/css/layui.css"> <script src="layui/layui.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> </head> <body> <div class="layui-container"> <div class="layui-row"> <div class="layui-col-md12"> <form class="layui-form"> <div class="layui-form-item"> <label class="layui-form-label">姓名</label> <div class="layui-input-inline"> <input type="text" name="name" placeholder="请输入姓名" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item"> <div class="layui-input-inline"> <button class="layui-btn layui-btn-normal" lay-submit lay-filter="query">查询</button> </div> </div> </form> </div> <div class="layui-col-md12"> <table class="layui-hide" id="data-table" lay-filter="data-table"></table> </div> </div> </div> </body> </html> ``` 2. 编写JavaScript代码 在JavaScript代码中,我们需要先定义一个数据源,然后使用layuitable模块渲染表格。接着,我们使用jQuery监听表单的提交事件,获取用户输入的查询条件,然后根据条件重新渲染表格。 ``` layui.use(['table', 'form'], function() { var table = layui.table; var form = layui.form; // 定义数据源 var data = [{ id: 1, name: '张三', age: 20, sex: '男', email: 'zhangsan@example.com' }, { id: 2, name: '李四', age: 25, sex: '女', email: 'lisi@example.com' }, { id: 3, name: '王五', age: 30, sex: '男', email: 'wangwu@example.com' }]; // 渲染表格 table.render({ elem: '#data-table', data: data, cols: [[ {field: 'id', title: 'ID', width: 80, sort: true}, {field: 'name', title: '姓名', width: 120}, {field: 'age', title: '年龄', width: 80, sort: true}, {field: 'sex', title: '性别', width: 80}, {field: 'email', title: '邮箱', minWidth: 200} ]], page: true }); // 监听表单提交事件 form.on('submit(query)', function(data) { var name = data.field.name; var newData = []; for (var i = 0; i < data.length; i++) { if (data[i].name.indexOf(name) >= 0) { newData.push(data[i]); } } table.reload('data-table', { data: newData }); return false; }); }); ``` 在上面的代码中,我们使用table.render方法渲染表格,并在form.on方法中监听表单的提交事件。当用户提交表单时,我们获取用户输入的查询条件,然后遍历数据源,筛选出符合条件的数据,并重新渲染表格。 至此,我们就成功地实现了使用layui框架实现table数据表格的动态查询。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值