• 动态加载CheckBoxList


    项目开发过程中,时常用到多选框动态加载问题,比如说:

    系统设计往来单位(客商)管理功能一般都用到单位性质(施工单位、设备供货商、勘察单位、设计单位等等)是需要一个用户自定义的字段,需要用到多选框动态加载,总结用到的方法有以下两种:

    方法一:利用服务端控件

    在aspx页面添加
    <asp:CheckBoxList ID="cblist" runat="server" RepeatDirection="Horizontal" ></asp:CheckBoxList>
    在aspx.cs文件添加
    绑定初始化数据:
            cblist.DataSource = ds;
            cblist.DataTextField = "name";
            cblist.DataValueField = "id";
            cblist.DataBind();
    保存时
       string str="";
            foreach (ListItem li in cblsit.Items)
            {
                if(li.Selected)
                {
                    str += li.Value + ",";
                }
            }
    
            str = str.Remove(str.Length - 1);
    
    
    
    显示时
      string ifstr = "SHJD0001,SHJD0002,SHJD0003";
                foreach (ListItem li in cblsit.Items)
                {
                    if (ifstr.IndexOf(li.Value)!=-1)
                    {
                        li.Selected=true;//str += li.Value + ",";
                    }
                }

    方法二:利用html拼接

    在aspx页面添加
    <span id="zjlypropertielists" runat="server" style="text-align: left;  100%"></span>
    在aspx.cs文件添加
    绑定初始化数据:
    zjlypropertielists.InnerHtml = CheckboxList.ZjlyCheckboxlist("ZJLY");
    
      /// <summary>
            /// 加载资金来源列表
            /// </summary>
            /// <param name="p"></param>
            /// <returns></returns>
            public string ZjlyCheckboxlist(string p)
            {
                string spanhistory = "";
                string strSQL = "";
                DataSet ds = new DataSet();
                //spanhistory += "<label> 资金来源:</label>";
                strSQL += "select h.id as code,h.name as name from  xt_zdk  h where h.codingClass='ZJLY'";
                ds = general.Select(strSQL);
                int count = ds.Tables[0].Rows.Count;
                for (int i = 0; i < count; i++)
                {
                    spanhistory += "<label><input type="checkbox"  value="" + ds.Tables[0].Rows[i]["code"].ToString() + ""  name="Zjlycb"  runat="server" />" + ds.Tables[0].Rows[i]["name"].ToString() + "</label>";
                }
                return spanhistory;
            }
    
    保存时
    
      string ZJLYcbvalue = HttpContext.Current.Request.Params["Zjlycb"];
    
    显示的时候:
    zjlypropertielists.InnerHtml = CheckboxList.ZjlyCheckboxlist(xmpsrw.zjly, "ZJLY");
    public string ZjlyCheckboxlist(string p, string p_2)
            {
                string spanhistory = "";
                string strSQL = "";
                DataSet ds = new DataSet();
                //spanhistory += "<label> 资金来源:</label>";
                strSQL += "select h.id as code,h.name as name from  xt_zdk  h where h.codingClass='ZJLY'";
                ds = general.Select(strSQL);
                int count = ds.Tables[0].Rows.Count;
                for (int i = 0; i < count; i++)
                {
                    if (p.IndexOf(ds.Tables[0].Rows[i]["code"].ToString())==-1)
                    {
                    
                    spanhistory += "<label><input type="checkbox"  value="" + ds.Tables[0].Rows[i]["code"].ToString() + ""  name="Zjlycb"  runat="server" />" + ds.Tables[0].Rows[i]["name"].ToString() + "</label>";
                    }
                    else
                    {
    
                        spanhistory += "<label><input type="checkbox"  value="" + ds.Tables[0].Rows[i]["code"].ToString() + ""  name="Zjlycb"  checked="checked"  runat="server" />" + ds.Tables[0].Rows[i]["name"].ToString() + "</label>";
                    
                    }
                }
                return spanhistory;
            }

     

  • 相关阅读:
    hping3 DDOS泛洪攻击
    如何利用kali破解密码
    python 字典数据类型day05
    Cisco Packet Tracer思科模拟器汉化本
    菜鸟入坑pythonday04列表
    python菜鸟入坑day02
    python运行的第一个脚本菜鸟篇
    python整个安装过程+环境变量
    菜鸟入坑python第一节
    01、python基础知识
  • 原文地址:https://www.cnblogs.com/zhutao1015/p/3272932.html
Copyright © 2020-2023  润新知