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