我有一个页面,并希望将onserverclick事件附加到我现有的事件中 的HtmlAnchor。
在设计视图中,我首先添加控件
<a runat="server" id="lnkFre" title="FR" onclick="document.getElementById('ctl00_hidLang').value='en-US';"><span>Français</span> </a>
我试过这样。
HtmlAnchor lnkFre = FindControl("lnkFre") as HtmlAnchor;
lnkFre.ServerClick += new EventHandler(lnkLang_Click);
此处lnkLang_Click是一个类中的事件,可从此页面访问。
但是在运行时它没有被添加。
我希望有这样的东西。
<a runat="server" id="lnkFre" title="FR" onserverclick="lnkLang_Click" onclick="document.getElementById('ctl00_hidLang').value='fr-BE';"><span>Français</span> </a>
这可能吗?或者请建议我另一种方法。
非常感谢
答案 0 :(得分:1)
这对我有用:
<强> HTML 强>
<a href="#A" runat="server" id="MyAnchor" onclick="alert('test');return true;">A</a>
代码背后
protected void Page_Load(object sender, EventArgs e)
{
HtmlAnchor lnkFre = MyAnchor as HtmlAnchor;
lnkFre.ServerClick += new EventHandler(lnkFre_ServerClick);
}
void lnkFre_ServerClick(object sender, EventArgs e)
{
throw new NotImplementedException();
}
您显然无法在运行时看到标记,因为事件是动态绑定的,但它会调用服务器单击事件。
请注意onclick事件结束时的return(true);
。这对于服务器点击也是必要的。