layui--table有权限时的异步数据加载

两种方法:

1、直接修改layui的源生table.js
找到table.js的ajax,添加权限。代码如下:

beforeSend:function (xhr) {xhr.setRequestHeader("authorization", localStorage.getItem("row"));}

table中直接进行异步数据加载:

table.render({
		url: urls,
		elem: '#table',
		height: 'full',
		where: datas,
		limit: 1,//当前显示条数
		request: {
			pageName: 'currentPage',
			limitName: 'pageSize'
		},
		response: {
			statusName: 'code',
			statusCode: 1,
			msgName: 'msg',
			countName: 'total',
			dataName: 'rows'
		},
		page: {
			layout: ['count', 'first', 'prev', 'page', 'next', 'last', 'skip'],
			groups: 1
		},//自定义分页
		cols: cols//表头
	});

2、在ajax中加入权限,返回的数据放入table中。分页执行一个laypage实例。
先定义权限:function setHeader(xhr) {xhr.setRequestHeader("authorization", localStorage.getItem("row"));}
完整代码:

$.ajax({
		type: 'get',
		url: urls,  //urls中条件添加pageSize
		data: datas,
		beforeSend: setHeader,//调用setHeader
		cache: false,
		dataType: 'json',
		success: function(data) {
			table.render({
					elem: '#table',
					height: 'full',
					data: data.rows,
					cols: cols
			});
				//执行一个laypage实例
				laypage.render({
					elem: 'id',
					count: data.total,
					curr: data.currentPage,
					limit:data.pageSize,
					layout: ['count', 'first', 'prev', 'page', 'next', 'last', 'skip'],//自定义分页样式
					jump: function(obj, first) {
						//首次不执行
						if (!first) {
							var urls = urls + obj.curr;
							getclicks(urls);//当前ajax事件
						}
					}
				});
		}
});
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
layui-soul-table 是一款基于layui框架开发的用于展示数据的表格插件。要快速隐藏列,可以通过以下步骤进行操作: 1. 首先,确保已加载layuilayui-soul-table的相关资源文件。可以在页面中引入layuilayui-soul-table的CSS和JS文件,例如: ```html <link rel="stylesheet" href="path/to/layui/css/layui.css"> <link rel="stylesheet" href="path/to/layui-soul-table/soulTable.css"> <script src="path/to/layui/layui.js"></script> <script src="path/to/layui-soul-table/soulTable.js"></script> ``` 2. 在HTML页面中,创建一个具有固定id的表格元素,例如: ```html <table id="demo" lay-filter="test"></table> ``` 3. 在JavaScript代码中,使用layui-soul-table的自定义参数来创建表格,并设置隐藏列的显示属性。例如: ```javascript layui.use(['table', 'soulTable'], function(){ var table = layui.table; var soulTable = layui.soulTable; table.render({ elem: '#demo', url: '/api/data', // 数据接口 cols: [[ {field:'id', title: 'ID'}, {field:'name', title: '名称'}, {field:'age', title: '年龄'}, // 其他列 {field:'操作', title: '操作', toolbar: '#barDemo', width: 150} // 需要隐藏的列 ]], }); soulTable.on('filter(test)', function(data){ // 判断隐藏列的显示状态 var isHide = data.isHide; if(isHide){ $('#demo .layui-table-view .layui-table').find('[data-field="操作"]').hide(); }else{ $('#demo .layui-table-view .layui-table').find('[data-field="操作"]').show(); } }); }); ``` 通过以上步骤,就可以在 layui-soul-table 中快速隐藏指定的列。具体实现是通过监听"filter(test)"事件,判断隐藏列的状态,然后利用jQuery的hide()和show()方法来控制目标列的显示属性。使用这种方法,我们可以方便地实现快速隐藏列功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值