![](/img/trans.png)
[英]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.