1 layui.table.reder
1.1 界面有一张表时
通常,当界面有一张表格时,需要对这张表格进行增删查改,在表格渲染时最常见的方法如下。
使用layui.table.render对表格属性渲染,如果数据需要向服务器请求,可以在render函数里添加url,地址为后台方法名。
如下:
table.render({
elem: '#demo' //指定原始表格元素选择器(推荐id选择器)
,url:'/ControllerName/methodName'(如果使用MVC框架,一般url地址都是控制器名/该控制器内的方法名)
,height: 315 //容器高度
,cols: [{}] //设置表头
,……
});
1.2 界面有多张表格,需要界面初始加载时将所有表格同时加载。
这种情况如果需要向后台请求数据库,可以直接统一请求一次,再将请求后的数据对表格进行渲染。
如:admin.req({
url:'/ControllerName/methodName',
data:data
method:'post'
done:funtion(res){
table.render({
elem: '#demo' //指定原始表格元素选择器(推荐id选择器)
,cols: [{}] //设置表头
,……
});
}
})
这样可以完成界面表格的初始显示。
如果我想要对数据查找并显示查找数据怎么办呢?
2 layui table reload
有两种方法。
2.1 是直接向后台请求数据。请求完数据后,对数据表格内的数据进行更新(重载)
将上述思路使用layui.table.reload()
如下:table.reload('tableID',{ url:'/path1/path2',where:where});
这里的url可写可不写,因为渲染和查找其实对应后台服务器都是同一种方法(都属于查找这种方法),reload里如果不写url,则默认调用render函数(前提是render里面带有url).向后台请求数据,前台刷新。
2.2 如果界面的数据表格有当前需要的全部数据(或者数据库里面的全部数据),可以直接前端直接获取界面,根据查找条件筛选数据,并将数据显示在当前界面上。
var ALLdata =layui.table.cache["tableID"] //获取当前界面id为tableID的表格的全部数据
var specialDATA=……//根据关键词来查数据
table.reload('tableID',{data:specialDATA})