title: OnClick vs OnClientClick for an asp:CheckBox?
body: <p>Does anyone know why a client-side javascript handler for asp:CheckBox needs to be an OnClick="" attribute rather than an OnClientClick="" attribute, as for asp:Button?</p>
  
  <p>For example, this works: </p>
  
  <pre><code>&lt;asp:CheckBox runat="server" OnClick="alert(this.checked);" /&gt;
  </code></pre>
  
  <p>and this doesn't (no error):</p>
  
  <pre><code>&lt;asp:CheckBox runat="server" OnClientClick="alert(this.checked);" /&gt;
  </code></pre>
  
  <p>but this works: </p>
  
  <pre><code>&lt;asp:Button runat="server" OnClientClick="alert('Hi');" /&gt;
  </code></pre>
  
  <p>and this doesn't (compile time error):</p>
  
  <pre><code>&lt;asp:Button runat="server" OnClick="alert('hi');" /&gt;
  </code></pre>
  
  <p>(I know what Button.OnClick is for; I'm wondering why CheckBox doesn't work the same way...)</p>