easyUI 实现tree树形菜单json的处理

今天使用easyUI想完成一个树形菜单,后台部分的已经写好,传json给前端显示菜单。

发现easyui处理树形菜单的json必须按照它自己的格式,但是我后台的部分已经写好,又不想也不方便去修改。

发现easyui的tree组件提供了loadFilter方法,此方法可以把后台传过来的数据进行过滤,于是我打算在前台处理json。

这些是我的代码,只需修改几处代码就能实现后台json转成easyui规定的json格式了。

//此处是easyui的json格式

var tree = {
    id:'',
    text:'',
    state:'',
    checked:'',
    attributes:'',
    children:''
}
//此处是把后台传过来的json数据转成easyui规定的格式
function bl(item){
    var tree = new Object();
    tree.id = item.id;
    tree.text = item.name;
    tree.state = 'open';
    tree.checked = 'false';
    tree.attributes = item.url;
    if(item.child_menus.length != 0){
        tree.children = jsonbl(item.child_menus);
    }else{
        tree.children = [];
    }
    return tree;
}
function jsonbl(data){
    var easyTree = [];
    $.each(data,function(index,item){
     easyTree[index] = bl(item);
     });
    return easyTree;
}
//此处是easyui调用tree组件的方法(使用easyui的童鞋自然懂得,只需修改请求json的api即可)
$('#tt').tree({
    url: '${pageContext.request.contextPath}/sysmenu/all',
     loadFilter: function(data){ 
        return jsonbl(data); 
    }
});
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 学习笔记一:jquery学习 Ceng coding的用法 Css速写:一般css样式都是开头简写+tab键补全,...
    毛小意阅读 4,108评论 0 2
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 13,913评论 1 32
  • 写在前面:jQuery EasyUI 是一个基于 jQuery 的前端ui框架,集成了各种用户界面插件。可能有些同...
    nightZing阅读 10,639评论 0 4
  • 至瓦伦汀——写在情人节 情人节(英语:Valentine's Day),又译为圣瓦伦汀节,相传节日命名源于古罗马时...
    很虎很虎阅读 3,280评论 0 1
  • 老大今年7岁了,马上上小学了,还是比较粘妈妈一些。 晚上总想跟妈妈睡。 今天白天都很生气的说,再也不跟妈妈睡。结果...
    追上你丢了我们阅读 1,477评论 0 1

友情链接更多精彩内容