从一个例程运行代码

时间:2011-09-25 19:47:46

标签: asp.net vb.net

我的链接看起来像是来自这个html的按钮

<p class="link-styleContact"><a href="#"><span>Email Contact Form</span></a></p>

通过将常规名称添加到href,可以在单击此文件后运行代码吗?如下所示

<p class="link-styleContact"><a href="ContactFormClicked" 
    runat="server"><span>Email Contact Form</span></a></p>

3 个答案:

答案 0 :(得分:20)

您可以改为使用LinkButton控件并订阅Click事件。

它将显示为浏览器上的链接,您可以将代码放在事件处理程序中。

ASPX:

<asp:LinkButton id="myLink" Text="Hi" OnClick="LinkButton_Click" runat="server"/>

代码隐藏(VB.NET):

Sub LinkButton_Click(sender As Object, e As EventArgs) 
   ' Your code here
End Sub

背后的代码(C#):

void LinkButton_Click(Object sender, EventArgs e) 
{
   // your code here
}

或者,您可以使用HtmlAnchor控件并设置ServerClick事件处理程序。这基本上是具有a属性的runat="server"元素:

ASPX:

<a id="AnchorButton" onserverclick="HtmlAnchor_Click" runat="server">
     Click Here
</a>

代码隐藏(VB.NET):

Sub HtmlAnchor_Click(sender As Object, e As EventArgs)
   ' your code here
End Sub

背后的代码(C#):

  void HtmlAnchor_Click(Object sender, EventArgs e)
  {
     // your code here
  }

答案 1 :(得分:1)

您可以使用LinkButton控件并处理Click事件。

答案 2 :(得分:0)

如果你想特别坚持<a>标签,那么有一些选择:

您可以使用<a href="http://example.com" onclick="return foo()">,其中foo()是一个javascript函数。

您还可以使用页面的onload事件来处理它,如下所示:

<a href="http://example.com?e=foo">,然后在pageload()事件中,执行以下操作:...if request.querystring("e") = "foo" then...

但是,正如其他人所建议的那样,<asp:linkbutton>控件是一个不错的选择。