js 页面加载树形菜单结构
2017-04-11 11:34
471 查看
1.通过sql语句查询子父关系结构
2.通过Java获得JSONArray
3.通过JS加载到easyui Tree组件上
select a.eventid as grouppeventid,a.groupname as groupName from (select t.eventid, t.groupname, t.grouppeventid from gps_groups t connect by prior t.eventid = t.grouppeventid start with t.grouppeventid is null ) a where 1 = 1 ;
2.通过Java获得JSONArray
JSONArray array = treeMenuList(JSONArray.fromObject(resultList)); //菜单树形结构 public JSONArray treeMenuList(JSONArray menuList, int parentId) { JSONArray childMenu = new JSONArray(); for (Object object : menuList) { JSONObject jsonMenu = JSONObject.fromObject(object); int menuId = jsonMenu.getInt("id"); int pid = jsonMenu.getInt("parentId"); if (parentId == pid) { JSONArray c_node = treeMenuList(menuList, menuId); jsonMenu.put("childNode", c_node); childMenu.add(jsonMenu); } } return childMenu; }
3.通过JS加载到easyui Tree组件上
function filterTree(data){ var iRtn = [] ; for(var i=0;i<=data.length-1;i++){ var arr = [] ; var json = data[i]; // 转换成Tree所要的格式 var obj = {} ; // 对children进行遍历 if(json.children && json.children.length>0){ arr = this.filterTree(json.children); } obj.children = arr ; iRtn.push(arr); } return iRtn ; } initTree:function(){ $("#xxx").tree({ url:"xxxx.action", lines:true, loadFilter: function(e){ return this.filterTree(e.items); }, onClick:function(node){ xx.curnode=node; xxx.treeData2Form(node.menu); } }); },
相关文章推荐
- 利用js加载dhtmlXTree的树形菜单例子
- jQuery+zTree加载树形结构菜单
- jQuery+zTree加载树形结构菜单
- jQuery+zTree加载树形结构菜单
- jQuery+zTree加载树形结构菜单
- jQuery+zTree加载树形结构菜单
- 使用原生js读取树形结构对象构筑多级结构菜单
- vue.js与element-ui实现菜单树形结构的解决方法
- jQuery+zTree加载树形结构菜单
- jQuery+zTree加载树形结构菜单
- [学习笔记]zTree是一个很好的js插件实现加载树形结构
- 页面异步加载树形菜单
- jQuery+zTree加载树形结构菜单
- JS中声明对象,调用方法加载树形菜单的实例
- js 页面加载的方法
- 页面加入_JS,CSS使用,#include添加文件,缓存页面,页面间传递汉字,IsPostBack控制页面的加载,自定义错语页面
- 利用js跨页面保存变量做菜单的方法
- 放一段选取treeview控件生成树形菜单复选框所有子节点的js代码
- DIV+CSS+JS树形菜单,可以刷新不改变菜单
- SolpartMenu的使用:(二)、在ASP.NET页面中使用SolpartMenu控件之动态的加载数据库中的数据来生成菜单