首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何动态创建asp按钮并向其添加事件

如何动态创建asp按钮并向其添加事件
EN

Stack Overflow用户
提问于 2012-07-09 18:47:53
回答 4查看 27K关注 0票数 3

我正尝试在asp.net上动态创建一个按钮,但我无法将事件添加到下面的it.What是否错误或缺失?

提前感谢

$

代码语言:javascript
复制
    Button btn2 = new Button();
    btn2.ID = "btnEdit";
    btn2.Text = "Edit Member";
    btn2.Click += new EventHandler(btnEdit_Click);
    form1.Controls.Add(btn2);

我也试过这样做:

$

代码语言:javascript
复制
    Button btn2 = new Button();
    btn2.ID = "btnEdit";
    btn2.Text = "Edit Member";
    btn2.Attributes.Add("OnClick","btnEdit_Click);
    form1.Controls.Add(btn2);
EN

回答 4

Stack Overflow用户

发布于 2012-07-09 18:53:36

我认为你试图在这里混合服务器端和客户端事件。

html属性OnClick是一个客户端,当用户单击按钮时它会触发一段JavaScript服务器事件OnClick在用户单击按钮并回发到服务器时发生,这允许您将函数(服务器端)挂钩到该事件中。

你是在寻找服务器端还是客户端?

要添加客户端事件,您可以执行以下操作

代码语言:javascript
复制
btn2.Attributes.Add("onclick","my_javascript_function");

要添加服务器端事件,可以执行以下操作

代码语言:javascript
复制
btn2.Click += new System.EventHandler(this.MyMethod); 

其中this.MyMethod是一个已经被seutp用来处理服务器端按钮点击的方法。

票数 0
EN

Stack Overflow用户

发布于 2012-07-09 18:58:25

请阅读有关asp.net webforms生命周期http://msdn.microsoft.com/en-us/library/ms178472.aspx的文章。每次加载页面时,您都必须创建/重新创建控件(例如OnLoad-Method)

http://www.asp.net/web-forms/videos/aspnet-ajax/how-to-dynamically-add-controls-to-a-web-page

票数 0
EN

Stack Overflow用户

发布于 2012-07-09 19:56:17

如果我是对的,你可以在Page_Load中创建按钮。

如果是,请检查是否有回发。

代码语言:javascript
复制
if(!postback)
{
   create your buttons.
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11393543

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档