• Combotree--别样的构建层级json字符串


    1、先看效果

        

    2、需要使用层级json格式,如:

        

        3、先不要着急怎么去实现它,先来想想怎么用对象来描述它

                

          4、代码

     protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
    
                    JavaScriptSerializer jss = new JavaScriptSerializer();
                    List<JsonClass> list = LinqJsonTree(0);
                    list.Insert(0, new JsonClass() { id = -1, children = null, CheckedInfo = true, pid = -1, text = "--请选择--" });
                    string jsonTree = jss.Serialize(list);
    
                    string action = Request["action"] ?? "";
                    if (action == "load")
                    {
                        Response.Write(jsonTree.Replace("CheckedInfo", "checked"));
                        Response.End();
    
                    }
    
                }
    
            }
    
            //递归
            public List<JsonClass> LinqJsonTree(int parentId)
            {
    
                List<RightInfo> classList = new RightInfoMan().GetMenus(parentId);
                List<JsonClass> jsonData = new List<JsonClass>();
                classList.ForEach(item =>
                {
                    jsonData.Add(new JsonClass
                    {
                        id = item.Id,
                        CheckedInfo = (item.Id == 11),
                        children = LinqJsonTree(item.Id),
                        pid = item.ParentId,
                        text = item.MenuName
                    });
                });
    
    
                return jsonData;
            }

         总结:有时候用别样的方法去实现一个问题 会有趣很多

    生活没有输赢,不要在乎别人如何评价你,开心就好。 QQ群:158138959
  • 相关阅读:
    ps入门
    ls命名 | Linux统计文件夹内的文件个数
    python打包成可执行文件
    装饰器
    poj 2752 Seek the Name, Seek the Fame
    字符串最大值
    次小生成树
    Selecting Courses
    poj 3461 Oulipo
    poj 2406 Power Strings
  • 原文地址:https://www.cnblogs.com/zjflove/p/3474422.html
Copyright © 2020-2023  润新知