Crear un método estático:
/// <summary>
/// Disable the button on submit. Remember to set up the validationGroup property if there is more than one form/submit
/// </summary>
/// <param name="objButton">The submit button object</param>
public static void disableSubmitButton(Button objButton)
{
objButton.CausesValidation = false;
string validationGroup = objButton.ValidationGroup;
if (string.IsNullOrEmpty(validationGroup))
objButton.Attributes.Add("onclick", "if (Page_ClientValidate()) {this.value=\"Processing...\";this.disabled=true;" + objButton.Page.ClientScript.GetPostBackEventReference(objButton, "").ToString() + "}");
else
objButton.Attributes.Add("onclick", "if (Page_ClientValidate(\"" + validationGroup + "\")) {this.value=\"Processing...\";this.disabled=true;" + objButton.Page.ClientScript.GetPostBackEventReference(objButton, "").ToString() + "}");
}
Crear un formulario y poner un botón en su forma (Recuerde que debe establecer la propiedad ValidationGroup si hay más de una forma/enviar):
<asp:Button runat="server" ID="btnSubmit" OnClick="btnSubmit_Click" />
Llámelo en la carga de la página:
CommonFunctions.disableSubmitButton(btnSubmit);
¿Quieres que sea inhabilitada siempre después de clic por primera vez? – Samiksha
@Samiksha, tengo que deshabilitar después de enviar formularios porque si desactivo después del primer clic, se desactiva una vez que hago clic para validar los datos con la validación de ASP.NET. – eugeneK
Tengo la actualización de mi respuesta, por favor revise ahora. lo que debe hacer, antes de desactivar el botón, debe comprobar la página_ClientValidate() –