我百度了好久,没有找到很方便对layui 动态表格进行无极限分类 的,所以,我只能自己写,可能写的不是很好,但能实现功能就行
对数据库的数据进行无限极分类
- tp5 源码
```php
<?php
/**
* 无限极排序
* Created by PhpStorm.
* User: 86166
* Date: 2020/3/16
* Time: 11:24
*/
class InfiniteSort
{
/**
* 无限极分类
* @param $data 数据
* @return array|bool
*/
public static function sortTree($data)
{
return self::executSort($data);
}
/**
对数据进行无极限分类
**/
public static function executSort($data = [], $pid = 0, $level = 0)
{
if (!$data){
return false;
}
static $arr = [];
foreach ($data as $k => $v) {
if ($v['pid'] == $pid) {
$v['level'] =$level;
$arr[]= $v;
unset($data[$k]);
self::executSort($data, $v['id'], $level+1);
}
}
return $arr;
}
}
layui
layui.use(['table','form'], function(){
var table = layui.table,
form =layui.form;
table.render({
elem: '#test'
,url:"{:url('Category/index')}"
,where: {
key: 'get'} //如果无需传递额外参数,可不加该参数
,method: 'get' //如果无需自定义HTTP类型,可不加该参数
,toolbar: '#toolbarDemo' //开启头部工具栏,并为其绑定左侧模板
,defaultToolbar: ['filter', 'exports', 'print', {
//自定义头部工具栏右侧图标。如无需自定义,去除该参数即可
title: '提示'
,layEvent: 'LAYTABLE_TIPS'
,icon: 'layui-icon-tips'
}]
,even:true
,title: '文章分类数据表'
,height: 'full-150'
,cols: [[
{
type: 'checkbox', fixed: 'left'}
,{
field:'id', title:'ID', width:80, fixed: 'left', unresize: true, sort: true}
,{
field:'cate_name', title:'文章分类名称', width:200}
,{
field:'thumb', title:'文章分类LOGO', width:180, templet: function(res){
return '<img width="42" height="30
" src="' + res.thumb +'">'
}}
,{
field:'cate_type', title