来源: Layui数据表格之获取表格中所有的数据 – CSDN博客
- 数据表格中的数据是通过直接赋值的方式。这里实际上思想是反过来的,将拿数据表格中的所有数据,转换为
Layui
数据表格拿原始数据去渲染数据表格- 创建一个作用域合适的JS对象数组用来保存数据表格中的原始数据
- 将上一步创建的JS对象数组也就是原始数据赋给table.render()的data参数
- 获取表格中的所有数据其实直接获取第一步中创建的JS对象数组即可,参照下面的代码,获取表格中的所有数据就是获取tableContent中的数据。
// 存放数据表格中的数据的对象数组tableContent
var tableContent = new Array();
table.render({
elem : '#viewTable',
height : 325,
even: true,
text: {
none: '您没有选中任何字段!'
},
// 拿对象数组tableContent中的数据作为原始数据渲染数据表格
data : tableContent,
page : {
layout: ['count', 'prev', 'page', 'next', 'limit', 'skip']
},
limit : 5,
limits : [5, 10, 15, 20, 25],
cellMinWidth: 80,
cols:[[
{type:'checkbox',fiexd : 'left'},
{title : '序号',type:'numbers'},
{field : 'column',title : '列',align:'center'},
{field : 'alias',title : '别名',align:'center',edit : 'text'},
{title : '操作',fiexd : 'right',align:'center', toolbar: '#viewBar'}
]],
done : function(res, curr, count){
// do something...
}
});
- 数据表格中的数据是通过异步请求的方式
直接通过table.render()的done参数即可获得,该参数的值是一个数据渲染完的回调,无论是直接赋值还是异步请求数据,在渲染完之后都会触发该回调。注意:使用直接赋值方式给Laytable
原始数据时,该方法获取到的是数据表格中当前页的数据,并不是表格中的所有数据,想获取表格中所有数据必须按照上面“数据表格中的数据是通过直接赋值的方式”的方法
table.render({ //其它参数在此省略
done: function(res, curr, count){
//如果是异步请求数据方式,res即为你接口返回的信息。
//如果是直接赋值的方式,res即为:{data: [], count: 99} data为当前页数据、count为数据总长度
console.log(res);
//得到当前页码
console.log(curr);
//得到数据总量
console.log(count);
}
});