J'ai un lien qui ressemble à un bouton de ce code HTML
<p class="link-styleContact"><a href="#"><span>Email Contact Form</span></a></p>
puis-je exécuter un code derrière le fichier lorsque l'utilisateur clique dessus en ajoutant le nom de la routine à la commande href? comme ci-dessous
<p class="link-styleContact"><a href="ContactFormClicked"
runat="server"><span>Email Contact Form</span></a></p>
Vous pouvez utiliser le contrôle LinkButton
à la place et vous abonner à l'événement Click
.
Il apparaîtra sous forme de lien dans le navigateur et vous pourrez insérer votre code dans le gestionnaire d'événements.
aspx:
<asp:LinkButton id="myLink" Text="Hi" OnClick="LinkButton_Click" runat="server"/>
Code derrière (VB.NET):
Sub LinkButton_Click(sender As Object, e As EventArgs)
' Your code here
End Sub
Code derrière (C #):
void LinkButton_Click(Object sender, EventArgs e)
{
// your code here
}
Vous pouvez également utiliser le contrôle HtmlAnchor
et définir le gestionnaire d'événements ServerClick
. Il s’agit essentiellement de l’élément a
avec un attribut runat="server"
:
aspx:
<a id="AnchorButton" onserverclick="HtmlAnchor_Click" runat="server">
Click Here
</a>
Code derrière (VB.NET):
Sub HtmlAnchor_Click(sender As Object, e As EventArgs)
' your code here
End Sub
Code derrière (C #):
void HtmlAnchor_Click(Object sender, EventArgs e)
{
// your code here
}
Vous pouvez utiliser le LinkButton control et gérer l’événement Click .
Si vous voulez vous en tenir à la balise <a>
spécifiquement, alors quelques options:
Vous pouvez utiliser <a href="http://example.com" onclick="return foo()">
, où foo()
est une fonction javascript.
Vous pouvez également utiliser l'événement onload de la page pour le gérer, comme suit:
<a href="http://example.com?e=foo">
, puis dans l'événement pageload (), procédez comme suit: ...if request.querystring("e") = "foo" then...
Mais sinon, comme d'autres l'ont suggéré, le contrôle <asp:linkbutton>
est un bon choix.