gridview中checkbox触发事件问题
我是一个新手,试着做了一个投票网页,一次最多投三票,超过三票不计入数据库,给出一个提示信息。可是在页面上点击checkbox框时不触发checkedchanged事件,上...
我是一个新手,试着做了一个投票网页,一次最多投三票,超过三票不计入数据库,给出一个提示信息。可是在页面上点击checkbox框时不触发checkedchanged事件,上网查了也没解决问题。哪位朋友可以帮帮忙啊?谢谢了!
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" oncheckedchanged="CheckBox1_CheckedChanged" runat="server" />
</ItemTemplate>
</asp:TemplateField>
事件代码如下:
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
int a=0;
CheckBox checkbox = (CheckBox)sender;
if (checkbox.Checked)
{
a++;
if (a > 3)
{
Label1.Text = Label1.Text + "dsfjljkf";
}
}
}
不知道是不是上面代码有问题,请帮忙解决。谢谢! 展开
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" oncheckedchanged="CheckBox1_CheckedChanged" runat="server" />
</ItemTemplate>
</asp:TemplateField>
事件代码如下:
protected void CheckBox1_CheckedChanged(object sender, EventArgs e)
{
int a=0;
CheckBox checkbox = (CheckBox)sender;
if (checkbox.Checked)
{
a++;
if (a > 3)
{
Label1.Text = Label1.Text + "dsfjljkf";
}
}
}
不知道是不是上面代码有问题,请帮忙解决。谢谢! 展开
1个回答
展开全部
protected void Page_Load(object sender, EventArgs e)
{
CheckBox chk = new CheckBox();
chk.Text = "testall"; // 这里可以换成数据库的内容
chk.CheckedChanged += new EventHandler(chk_CheckedChanged);
chk.AutoPostBack = true;
Page.Form.Controls.Add(chk);
for (int i = 0; i < 10; i++)
{
CheckBox chk2 = new CheckBox();
chk2.Text = "test" + i.ToString(); // 这里可以换成数据库的内容
chk2.Checked = (i % 3 == 0); // 这里可以换成数据库的内容
Page.Form.Controls.Add(chk2);
}
}
void chk_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;
}
}
}
{
CheckBox chk = new CheckBox();
chk.Text = "testall"; // 这里可以换成数据库的内容
chk.CheckedChanged += new EventHandler(chk_CheckedChanged);
chk.AutoPostBack = true;
Page.Form.Controls.Add(chk);
for (int i = 0; i < 10; i++)
{
CheckBox chk2 = new CheckBox();
chk2.Text = "test" + i.ToString(); // 这里可以换成数据库的内容
chk2.Checked = (i % 3 == 0); // 这里可以换成数据库的内容
Page.Form.Controls.Add(chk2);
}
}
void chk_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;
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询