我有几个锚点按钮,onServerClick方法是动态创建的,但当我点击网页上的按钮时,他们不会调用该函数。以下是标签的示例:
<a href="#" runat="server" id="button0" class="btn btn-default btn-sm" onserverclick="reportMessage" creator="Tom" content="This is a test."><i class="fa fa-flag"></i> Report</a>
以下是一些被调用的方法:
private void reportMessage(object sender, EventArgs e)
{
var btn = (HtmlAnchor)sender;
string content = btn.Attributes["content"].ToString();
string commentCreator = btn.Attributes["creator"].ToString()}
感谢任何帮助。
答案 0 :(得分:0)
由于button0
是HTML锚控件ID,您可以在ServerClick
事件中为Page_Load
事件添加处理程序,以处理每个锚链接,如下所示:
protected void Page_Load(object sender, EventArgs e)
{
HtmlAnchor btn = button0 as HtmlAnchor;
btn.ServerClick += new EventHandler(reportMessage);
}
此外,您可以添加onclick
包含return true
的事件,以确保触发服务器点击事件。
<a href="#" runat="server" id="button0" onserverclick="reportMessage" onclick="return true;" ...>Link Text</a>
注意:由于reportMessage
是绑定到HtmlAnchor
的事件处理程序方法,因此我建议使用protected
级别而不是private
。
类似问题: