国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

如何采用easyui tree編寫簡單角色權限代碼

2019-11-17 02:07:22
字體:
來源:轉載
供稿:網友

如何采用easyui tree編寫簡單角色權限代碼

首先每個管理員得對應一個角色:

而角色可以操作多個欄目,這種情況下我們可以采用tree多選的方式:

在頁面上js代碼:

                    $('#Permission').dialog({ title: '欄目權限', closed: false });                    $('#rtt').tree({                        url: 'ashx/RoleService.ashx?action=RoleTree&Rid=' + raw.ID,                        method: 'get',                        animate: true,                        checkbox: true                    });                    $('#Rid').val(raw.ID);

用了一個dialog彈出進行實現ashx中傳入一個角色編號

C#代碼為:

                case "RoleTree":                    string Rid = context.Request.Params["Rid"];                    int Roleid = Convert.ToInt32(Rid);                    List<tree> treelist = getChildren("Angel_Admin_Navigation", "0", Roleid);                    Newtonsoft.Json.Converters.IsoDateTimeConverter timeConverter = new Newtonsoft.Json.Converters.IsoDateTimeConverter();                    timeConverter.DateTimeFormat = "yyyy'-'MM'-'dd";                    string ResJsonStr = JsonConvert.SerializeObject(treelist, Formatting.Indented, timeConverter);                    context.Response.ContentType = "text/plain";                    context.Response.Clear();                    context.Response.Write(ResJsonStr);

case哪里是一個action操作參數 這個就不用我說了吧!

現在我們來看看輸出tree數據怎么寫:

        //Tree遞歸調用        public List<tree> getChildren(string tableName, string fid, int RoleId)        {            DBHelperSql Dbhelper = new DBHelperSql();            List<tree> list = new List<tree>();            DataTable dt = Dbhelper.GetDataTable(tableName, " ParentId='" + fid + "' ");            if (dt.Rows.Count > 0)            {                for (int i = 0; i < dt.Rows.Count; i++)                {                    tree tree = new tree();                    tree.id = dt.Rows[i]["NavName"].ToString();                    tree.text = dt.Rows[i]["TitleName"].ToString();                    if(OperateBll.IsRoleoperateDataExist(dt.Rows[i]["NavName"].ToString(),RoleId)){                    tree.@checked =true;                    }                    tree.children = getChildren(tableName, dt.Rows[i]["id"].ToString(),RoleId);                    list.Add(tree);                }            }            else                list = null;            return list;        }        //tree屬性        public class tree        {            public string id { get; set; }            public string text { get; set; }            public bool @checked { get; set; }            public List<tree> children { get; set; }        }

一個遞歸的方法就實現了 看著是不是很簡單。上面輸出json的部分調用這個方法即可

最終顯示頁面如圖:

有時候easyui用習慣了真的很不錯,以上代碼希望能幫到需要的同學。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沂水县| 普定县| 叙永县| 绵阳市| 昌黎县| 洱源县| 迁安市| 宜春市| 张家口市| 阿拉善盟| 基隆市| 临沂市| 临湘市| 雷山县| 囊谦县| 永安市| 木兰县| 青冈县| 太原市| 马关县| 大同县| 五指山市| 宁城县| 额敏县| 宜昌市| 浦城县| 卫辉市| 育儿| 宜昌市| 新源县| 保康县| 韶山市| 宕昌县| 临猗县| 湖南省| 苍梧县| 辉县市| 蓝田县| 清水河县| 崇阳县| 如皋市|