日期:2014-05-17  浏览次数:20550 次

如何在后台便利当前页面中的所有CheckBox
比如 我页面中有有10个CheckBox 后台通过一个方法获取他们的ID

我记得是后台通过foreach的方法获取,但是具体操作忘记了,请各位帮帮忙

------解决方案--------------------
这个要看复选框所处控件树中的层次和位置而定。
一般地,可以用递归实现:
C# code
    protected void Page_Load(object sender, EventArgs e)
    {
        GetCheckBoxID(this.Page);
    }
    protected void GetCheckBoxID(Control control)
    {
        foreach (Control ctl in control.Controls)
        {
            if (ctl is CheckBox)
                Response.Write(ctl.ID + "<br/>");
            if (ctl.HasControls())
                GetCheckBoxID(ctl);
        }
    }

------解决方案--------------------
探讨
这个要看复选框所处控件树中的层次和位置而定。
一般地,可以用递归实现:

C# code

protected void Page_Load(object sender, EventArgs e)
{
GetCheckBoxID(this.Page);
}
protected void GetCheckBoxID(Control c……

------解决方案--------------------
我给他的代码是简单测试过的,它说不行,可能是所谓的CheckBox根本不是WebControl,或许是HtmlControl或者LiteralControl的一部分。