As you already noticed the asp:Label does not have "onClick" client side event.
So the best way to handle this is to use JQuery, which has already become the standard JavaScript framework for many companies including Microsoft.
Try this code, it works.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
</head>
<body>
<form id="form1" runat="server">
<asp:Label ID="lbl1" runat="server" Text="My Label Text"></asp:Label>
<asp:HiddenField runat="server" ID="hid1201" Value="My Hidden Value" />
</form>
<script language="javascript" type="text/javascript">
$(document).ready(function () {
$("#<%=lbl1.ClientID %>").click(function () {
alert($("#<%=hid1201.ClientID %>").val());
});
});
</script>
</body>
</html>
Good luck.