jQuery easyUI树形表格(TreeGrid)的实现
2017-10-18 15:28
281 查看
jQuery easyUI树形表格(TreeGrid)的简单实现
网上只写了页面中实现的效果,数据固定,数据是json文件解决。下面我写了一个从后台模拟数据,在页面显示的效果demo,不足之处望指正!!!效果图如下:只截取了部分
页面HTML标签:
<table id="tt"></table>
页面js代码:
$('#tt').treegrid({ url:'${ctx }/account/treegrid.do', title: 'TreeGrid', iconCls: 'icon-save', singleSelect:true, idField:'id', //关键字段来标识树节点,不能重复 treeField:'name', //树节点字段,也就是树节点的名称 fitColumns:true, rownumbers:true,//显示一个行号列 collapsible:true,//收起表格的内容 width: 700, height: 450, loadMsg: '数据加载中...', animate:true,//在节点展开或折叠的时候是否显示动画效果 lines:true,//显示treegrid行 columns:[[ {field:'name',title:'第一列',width:100,align:'left'}, {field:'size',title:'第二列',width:60,align:'center'}, {field:'date',title:'第三列',width:80,align:'center'} ]], onLoadSuccess:function(data){ $('#tt').treegrid('expandAll');//全部展开树节点 } });
后台代码,模拟一些数据;数据格式:[{“id”:1,”name”:154,”children”:[{“id”:2,”name”:155}]}],children代表子节点中的数据,id是唯一的,否则easyUI解析的时候会出现错误。”state”:”closed”,数据中如果有这个属性的值就代表子节点是折叠的,效果如下:
其他节点展开,它及其它的子节点是折叠的效果。
public static int j = 0;//成员变量,创建唯一的id值 @RequestMapping("/treegrid.do") @ResponseBody public DataGrid treeGrid() throws Exception{ j=0; //所有的数据集合 List<Map<String, Object>> results = new ArrayList<Map<String,Object>>(); DataGrid dg = new DataGrid(); //模拟的几条数据 results = createTreeGridChildren(14); //返回到页面的数据集合 dg.setRows(results); dg.setTotal(j+1); return dg; } /** * 递归设置树 * @param list * @param id * @return */ //n代表树结构层数 private static List<Map<String, Object>> createTreeGridChildren(int n) { List<Map<String, Object>> childList = new ArrayList<Map<String, Object>>(); Map<String, Object> map = null; if(n==1){ map = new HashMap<String, Object>(); //在页面easyUI插件treeGrid提供了数据转换的columns属性,具体看相关的js代码 map.put("id", j+1); map.put("size", j+1); map.put("name", "历史"); map.put("date", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(System.currentTimeMillis()))); if (map != null) childList.add(map); return childList; }else{ j++; map = new HashMap<String, Object>(); map.put("id", j); map.put("size", j); map.put("name", "张三"); map.put("date", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(System.currentTimeMillis()))); map.put("children", createTreeGridChildren(n-1)); childList.add(map); return childList; } }
DataGrid 实体类,提供一些get,set方法。用到的属性是结果集:rows,总记录数:total
package util; import java.util.List; import java.util.Map; public class DataGrid { private int page = 1 ;// 当前页 private List<Map<String,Object>> rows;// 结果集 private int pageSize = 10;//每页显示的数据的条数 private int total;// 总记录数 public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getPage() { return page; } public void setPage(int page) { this.page = page; } public List<Map<String, Object>> getRows() { return rows; } public void setRows(List<Map<String, Object>> rows) { this.rows = rows; } public int getTotal() { return total; } public void setTotal(int total) { this.total = total; } }
相关文章推荐
- JAVA实现EASYUI树形表格(TreeGrid)代码
- 第二百二十八节,jQuery EasyUI,TreeGrid(树形表格)组件
- Java easyui树形表格TreeGrid的实现代码
- 实现树形表格显示
- web页面树形表格的实现
- treeGrid树形数据表格的json数据格式说明
- sql server 2000 实现树形结构表格查询
- easyui中最新版本的TreeGrid同步树形表格、同步加异步树形表格、树形表格分页且异步查看子节点
- easyui源码翻译1.32--TreeGrid(树形表格)
- jQuery EasyUI中对表格进行编辑的实现代码
- jQuery Easyui,表格对应工具栏的使用,具体实现
- jquery easyui实现树形(Tree)菜单点击,在content页生成Tab功能
- 树形表格 - TreeGrid 分页查询【Java】
- Jquery easyui treegrid实现树形表格的行拖拽
- jQuery EasyUI中对表格进行编辑的实现代码
- 复杂表格的树形结构的添加删除行div实现
- jQuery EasyUI的TreeGrid查询功能实现方法
- jqGrid JS之TreeGrid (树形表格)- yellowcong
- 一款树形表格的插件TreeGrid
- Jquery EasyUI实现treegrid上显示checkbox并取选定值的方法