<p>I wanted to do something like this:</p>

<pre><code>&lt;asp:Label ID="lblMyLabel" onclick="lblMyLabel_Click" runat="server"&gt;My Label&lt;/asp:Label&gt;
</code></pre>

<p>I know that in Javascript I can do:</p>

<pre><code>&lt;span onclick="foo();"&gt;My Label&lt;/span&gt;
</code></pre>

<p>So I'm wondering why I can't do that with a Label object.</p>

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; }
```
```