[英]Trying to trigger a button.click() event in ASP.NET from JavaScript. Event won't trigger
[英]Second eventhandler won't trigger from button
我有2个按钮。 第一个按钮从后面的代码中提取。 单击第一个按钮时会绘制第二个按钮。 这非常有效。 单击第二个按钮时添加事件时,不会触发此事件。 正如您在下面的代码中看到的那样,有一个btnTwo_click函数。 如果我在此函数上设置断点,程序甚至不会中断。 有没有办法从后面的代码中触发此事件(不使用java脚本)?
这是代码,我实际上在表中使用这个系统。 但是这个简单的代码到底有同样的问题。
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
ImageButton btn = new ImageButton();
btn.Command += new CommandEventHandler(btnOne_Click);
form1.Controls.Add(btn);
}
void btnOne_Click(object sender, EventArgs e)
{
ImageButton btn = new ImageButton();
btn.Command += new CommandEventHandler(btnTwo_Click);
form1.Controls.Add(btn);
}
void btnTwo_Click(object sender, EventArgs e)
{
Label lblTest = new Label(); //BREAKPOINT
form1.Controls.Add(lblTest);
}
}
只需将此行移至Page_Load
事件即可运行;)
btn.Command += new CommandEventHandler(btnTwo_Click);
您必须在Page生命周期的Page_Load或Page_Init方法中添加第二个按钮:
例如
protected void Page_Load(object sender, EventArgs e)
{
ImageButton btn = new ImageButton();
btn.Command += btnOne_Click;
form1.Controls.Add(btn);
ImageButton btn2 = new ImageButton();
btn2.Command += btnTwo_Click;
btn2.Visible = false;
form1.Controls.Add(btn2);
}
void btnOne_Click(object sender, EventArgs e)
{
// Your second button
form1.Controls[2].Visible = true;
}
void btnTwo_Click(object sender, EventArgs e)
{
ImageButton btn2 = (ImageButton)sender;
// Do something
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.