Is there a way to add an onclick event to an ASP.NET Label server control? Is there a way to add an onclick event to an ASP.NET Label server control? asp.net asp.net

Is there a way to add an onclick event to an ASP.NET Label server control?


You can use Attributes to add onclick client side callback.

I didn't know you can do this on span tags, but if it works you can add 'onclick' by lblMyLabel.Attributes.Add("onclick", "foo();");

But foo(); would need to be a client side javascript function.

System.Web.UI.WebControls.Label does NOT have OnClick server event. You could look into using AJAX if you want server callback with example above.

You could also use LinkButton like other say. You can make it not look like a link by using CSS, if it is just that underline you are concerned about.

ASPX:

<asp:LinkButton ID="LinkButton1" runat="server"     CssClass="imjusttext" OnClick="LinkButton1_Click">LinkButton</asp:LinkButton>

CSS:

a.imjusttext{ color: #000000; text-decoration: none; }a.imjusttext:hover { text-decoration: none; }


Your question doesn't specify if you mean to raise the click event on the server (VB or c#) or the client (javascript.) If you're looking for a server-side event you should use a link button with css that makes the link appear as a label. You can then use the link button's server-side click event. If you're looking for a client-side click event - just type it into your server control markup
asp:label id="MyLabel" runat="server" onclick="javascript:alert('hello');" Text="Click Me";
ASP.NET will emit additional attributes in the html markup that generates.


You can do it in code in the page_load eg:

void Page_Load(object sender, EventArgs e) {      lblMyLabel.Attributes.Add("onclick",           "javascript:alert('ALERT ALERT!!!')");}