后台.cs怎样动态加载select标签的optgroup
只是想实现如下代码的功能.<title>可以分类显示的Select下拉框</title>
<select>
<optgroup label="WEB编程">
<option>ASP</option>
<option>PHP</option>
<option>Ajax</option>
</optgroup>
<optgroup label="WinForm编程">
<option>VB</option>
<option>VC</option>
<option>C#</option>
<option>Delphi</option>
</optgroup>
</select>
但是后台.cs文件不知道该怎么加载optgroup这个标签,后台数据库取出的datatable值就是
id name parentid 样子的数据.
public static void BindDropDownList2(System.Web.UI.HtmlControls.HtmlSelect select, System.Data.DataTable dt, string firstfather_id, string childid, string father_id, string name)
{
System.Data.DataRow[] drs = dt.Select(father_id + "=" + firstfather_id);
for (int i = 0; i < drs.Length; i++)
{
select.Attributes.Add("<optgroup>", drs[i][name].ToString());
}
}
前台如下:
<select id="select" style="width:150px;" runat="server" </select>
哪位兄弟对这个研究过的,麻烦给点思路,后台代码我用
select.Items.Add(******);试过不行,出来的结果optgroup是在选项里面的,没有分组,用上面代码的attributes更不对的,求解啊!!!!!! --------------------编程问答-------------------- 一般这种情况我都用 StringBuilder
因为输出客户端的 这个东西还是比较方便
或者楼主可以 用public string op 来做 前台<%=op%>获取就OK了
方式很多的 没必要给他做成这个模式
实在不行用 服务端的 下拉列表被何必执着呢? --------------------编程问答--------------------
--------------------编程问答--------------------
public static void BindDropDownList2(System.Web.UI.HtmlControls.HtmlSelect select, System.Data.DataTable dt, string firstfather_id, string childid, string father_id, string name)
{
System.Data.DataRow[] drs = dt.Select(father_id + "=" + firstfather_id);
for (int i = 0; i < drs.Length; i++)
{
System.Web.UI.HtmlControls.HtmlGenericControl hgc = new System.Web.UI.HtmlControls.HtmlGenericlControl("optgroup");
hgc.Attributes.Add("label",drs[i][name].ToString());
select.Controls.Add(hgc);
}
}
晕啊,这样报下面的错误
System.Web.HttpException: “System.Web.UI.HtmlControls.HtmlSelect”不允许使用子控件。
--------------------编程问答--------------------
是啊,何苦纠结于这个,其实也不是必要非得实现这个东东,就只是突然弄到了这个,想到要这个做个,所以就纠结在上面了!!!!
补充:.NET技术 , ASP.NET