title: Help with DataGrid/CheckBoxes/double submit
body: <p>We have a simple datagrid.  Each row has a checkbox.  The checkbox is set to autopostback, and the code-behind has an event handler for the checkbox check-changed event.  This all works as expected, nothing complicated.</p>
  
  <p>However, we want to disable the checkboxes as soon as one is checked to prevent a double submit i.e. check box checked, all checkboxes are disabled via client side javascript, form submitted.</p>
  
  <p>To achieve this I we are injecting some code into the onclick event as follows (note that the alert is just for testing!):</p>
  
  <pre><code>Protected Sub DgAccounts_ItemCreated(ByVal sender As System.Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles DgAccounts.ItemCreated
      If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then
          Dim chk As CheckBox = CType(e.Item.FindControl("chkItemChecked"), CheckBox)            
          chk.Attributes.Add("onclick", "alert('fired ...');DisableAllDataGridCheckBoxes();")
      End If
  End Sub
  </code></pre>
  
  <p>When inspecting the source of the rendered page we get the following:</p>
  
  <pre><code>&lt;input id="DgAccounts__ctl2_chkItemChecked" type="checkbox" name="DgAccounts:_ctl2:chkItemChecked" onclick="alert('fired ...');DisableAllDataGridCheckBoxes();setTimeout('__doPostBack(\'DgAccounts$_ctl2$chkItemChecked\',\'\')', 0)" language="javascript" /&gt;
  </code></pre>
  
  <p>It all appears in order, however the server side event does not fire – I believe this is due to the checkbox being disabled, as if we just leave the alert in and remove the call to disable the checkbox it all works fine.</p>
  
  <p>Can I force the check-changed event to fire even though the check box is disabled?</p>