zoukankan      html  css  js  c++  java
  • DroDownList控件多级下拉菜单

    后台代码:

        /// <summary>
            /// 绑定下拉菜单
            /// </summary>
            private void BindDropList()
            {
                DataTable dt = bacManage.GetAllArticleCategory();
                CreateLevelDropDown(drpCategoryId, dt);
            }
    
            /// <summary>
            /// 创建分级下拉框
            /// </summary>
            /// <param name="ddlst"></param>
            /// <param name="dt"></param>
            private void CreateLevelDropDown(DropDownList ddlst, DataTable dt)
            {
                System.Collections.ArrayList allItems = new ArrayList();
                DataRow[] rows = dt.Select("[parent]=" + 0);
                foreach (DataRow row in rows)
                    CreateLevelDropDownAssistant(dt, ref   allItems, row, string.Empty);
    
                ListItem[] items = new ListItem[allItems.Count];
                allItems.CopyTo(items);
                ddlst.Items.AddRange(items);
            }
    
            /// <summary>
            /// 设置下拉列表分级格式
            /// </summary>
            /// <param name="dt"></param>
            /// <param name="items"></param>
            /// <param name="parentRow"></param>
            /// <param name="curHeader"></param>
            private void CreateLevelDropDownAssistant(DataTable dt, ref   ArrayList items, DataRow parentRow, string curHeader)
            {
                ListItem newItem = new ListItem(curHeader + parentRow["name"].ToString(), parentRow["category_id"].ToString());
                items.Add(newItem);
                parentRow.Delete();
    
                DataRow[] rows = dt.Select("[parent]='" + newItem.Value + "'");
                for (int i = 0; i < rows.Length - 1; i++)
                    CreateLevelDropDownAssistant(dt, ref   items, rows[i], curHeader.Replace("", "|").Replace("", "") + "");
    
                if (rows.Length > 0)
                    CreateLevelDropDownAssistant(dt, ref   items, rows[rows.Length - 1], curHeader.Replace("", "").Replace("", "") + "");
            }

        /// <summary>
            /// 绑定下拉菜单
            /// </summary>
            private void BindDropList()
            {
                DataTable dt = bacManage.GetAllArticleCategory();
                CreateLevelDropDown(drpCategoryId, dt);
            }

            /// <summary>
            /// 创建分级下拉框
            /// </summary>
            /// <param name="ddlst"></param>
            /// <param name="dt"></param>
            private void CreateLevelDropDown(DropDownList ddlst, DataTable dt)
            {
                System.Collections.ArrayList allItems = new ArrayList();
                DataRow[] rows = dt.Select("[parent]=" + 0);
                foreach (DataRow row in rows)
                    CreateLevelDropDownAssistant(dt, ref   allItems, row, string.Empty);

                ListItem[] items = new ListItem[allItems.Count];
                allItems.CopyTo(items);
                ddlst.Items.AddRange(items);
            }

            /// <summary>
            /// 设置下拉列表分级格式
            /// </summary>
            /// <param name="dt"></param>
            /// <param name="items"></param>
            /// <param name="parentRow"></param>
            /// <param name="curHeader"></param>
            private void CreateLevelDropDownAssistant(DataTable dt, ref   ArrayList items, DataRow parentRow, string curHeader)
            {
                ListItem newItem = new ListItem(curHeader + parentRow["name"].ToString(), parentRow["category_id"].ToString());
                items.Add(newItem);
                parentRow.Delete();

                DataRow[] rows = dt.Select("[parent]='" + newItem.Value + "'");
                for (int i = 0; i < rows.Length - 1; i++)
                    CreateLevelDropDownAssistant(dt, ref   items, rows[i], curHeader.Replace("┣", "|").Replace("┗", "┣") + "┣");

                if (rows.Length > 0)
                    CreateLevelDropDownAssistant(dt, ref   items, rows[rows.Length - 1], curHeader.Replace("┣", "┃").Replace("┗", "┣") + "┗");
            }

  • 相关阅读:
    深入理解Java虚拟机-走进Java
    springboot服务引入外部jar包在windows运行正常,在linux环境上无法加载到引入jar包的类
    ActiveMQ数据接收类型问题
    kafka报文一直打印的问题
    Java基本语法
    flask跨域问题
    flask接口传参
    iTextSharp导出PDF模板(报告)
    ASP.NET中<%=%>、<%%>、<%@%>、<%#%>的用法与区别
    python AES+SHA1PRNG
  • 原文地址:https://www.cnblogs.com/acoll/p/3834193.html
Copyright © 2011-2022 走看看