如何为动态链接按钮添加Onclick功能
本文关键字:添加 Onclick 功能 按钮 链接 动态 | 更新日期: 2023-09-27 18:05:43
我需要添加一个Onclick
属性到我动态生成的LinkButton
。怎么加呢?
这是我到目前为止遇到的代码:
foreach(string i in List)//list has more than 50 data's
{
LinkButton link = new LinkButton();
link.Text = topics;
link.ID = topics;
link.Attributes.Add("runat", "server");
link.Click += new EventHandler(this.lnk_Click);
div_ID.Controls.Add(link);
div_ID.Controls.Add(new LiteralControl("<br />"));
}
public void lnk_Click(object sender,EventArgs e)
{
string ctrlId = ((Control)sender).ID;
GMethod(ctrlId); //handles some function in which i pass the id of the particular lnk button
}
我可以从动态生成的LinkButton
中调用lnk_Click
。它的onclick属性没有被添加到链接按钮。请帮帮我,伙计们。我很着急
您不需要添加runat="server"属性,因为这将自动完成。你已经分配了OnClick事件处理程序,所以你也应该在那里设置好。
由于您正在动态创建这些控件,因此请确保您有适当的代码来在回发后重新生成LinkButton控件,否则您的事件处理程序将不会触发。还要确保在回发后重新生成它时分配相同的id。
我还面临着同样的问题,即动态创建的超链接的onClick事件没有被触发。我犯了一个错误,将动态创建超链接的代码放在"if(!IsPostBack)"中,并且每次都为超链接分配一个随机id。所以,请尝试分配一个唯一的ID,并保持代码外面"if(!IsPostBack)"。将工作。