C# asp.NET动态按钮服务器端事件Don';行不通
我需要在asp.NET中为表中的每一行创建一个按钮。 我循环我的datareader并手动创建一个“输入”按钮。问题是,当我单击页面中的按钮时,它不会调用事件(btnLogin\u ServerClick) 我怎么能修理 对不起,我英语不好。。我已通过以下代码:C# asp.NET动态按钮服务器端事件Don';行不通,c#,asp.net,button,C#,Asp.net,Button,我需要在asp.NET中为表中的每一行创建一个按钮。 我循环我的datareader并手动创建一个“输入”按钮。问题是,当我单击页面中的按钮时,它不会调用事件(btnLogin\u ServerClick) 我怎么能修理 对不起,我英语不好。。我已通过以下代码: int tmp = 0; while (dr.Read()) { myTable += "<tr>"; for(int i = 0; i <= 7; i++)
int tmp = 0;
while (dr.Read())
{
myTable += "<tr>";
for(int i = 0; i <= 7; i++)
{
myTable += "<td>";
myTable += dr[i].ToString();
myTable += "</td>";
}
myTable += "<td>";
myTable += "<input class=\"btn btn-primary btn-lg outline\" type=\"button\" runat=\"server\" value=\"More\" name=\"btn" + tmp + "\" id=\"btnLogin" + tmp+ "\" onserverclick=\"btnLogin_ServerClick\" usesubmitbehavior=\"false\" />";
myTable += "</td>";
myTable += "</tr>";
tmp++;
}
//--------------------
//create dynamic table
//--------------------
server_badge.InnerText = tmp + "";
servers_table.InnerHtml = myTable;
}
protected void btnLogin_ServerClick(object sender, EventArgs e)
{
Response.Write("test");
}
inttmp=0;
while(dr.Read())
{
myTable+=“”;
对于(inti=0;i你不能
使用按钮
类,而不是添加HTML片段。您将获得完全相同的HTML结果,但在后面的代码上使用实际对象,而不是字符串:
Button b = new Button();
b.CssClass = "btn btn-primary";
// and so on ...
按钮
类为您可能要配置的每个想象中的HTML属性都有一个属性。您会发现很多成员,只需忽略那些听起来古怪的成员,并坚持使用那些听起来像您需要的属性(CssClass
,单击
,OnClientClick
等等)。分配完所需的所有内容(在HTML中)后,您最终可以附加事件侦听器:
b.Click += new EventHandler(btnLogin_ServerClick);
^ press <TAB> here
b.Click+=neweventhandler(btnLogin\u ServerClick);
^按这里
当您在+=
之后按
并将其包装到适当的事件处理程序对象中时,Visual Studio将生成处理程序方法