aspx:
<div>
<asp:CheckBox ID="cbAll" runat="server" AutoPostBack="True" OnCheckedChanged="cbAll_CheckedChanged" Text="全選 " />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /><br />
</div>
aspx.cs:
Page_Load:
//動態添加CheckBox
int j = 5;
for (int i = 1; i <= j; i++)
{
CheckBox cb = new CheckBox();
cb.Text = i.ToString();
cb.Font.Size = System.Web.UI.WebControls.FontUnit.Small;
cb.ID = "cb" + i.ToString();
cb.Checked = false;
Page.Form.Controls.Add(cb);
}
//全選及取消
protected void cbAll_CheckedChanged(object sender, EventArgs e)
{
CheckBox all = sender as CheckBox;
foreach (Control ctl in Page.Form.Controls)
{
if (ctl is CheckBox)
{
CheckBox chk = ctl as CheckBox;
chk.Checked = all.Checked;
}
}
}
//獲取選中的除全選外
protected void Button1_Click(object sender, EventArgs e)
{
foreach (Control ctl in Page.Form.Controls)
{
if (ctl is CheckBox)
{
CheckBox chk = ctl as CheckBox;
if (chk.Checked == true && chk.Text.Trim() != "全選")
{
Response.Write(chk.Text);
}
}
}
}