Ich habe begonnen, die Lösung von @EverettEvola zu implementieren, aber auch dort, wo die Validierungslogik mehrfach aufgerufen wurde und mehrere ValidationSummary-Popups angezeigt wurden. Meine Lösung war wie folgt:
Auf der Schaltfläche (in meinem Fall war die Schaltfläche eine Absenden-Schaltfläche)
OnClientClick="return CustomValidationOnClick()"
Und die Funktion CustomValidationOnClick()
function CustomValidationOnClick(source, args) {
//Manually kickoff page validation
//This call will display the Validation summary popup if page is invalid
Page_ClientValidate();
//Page_IsValid set by the result of the Page_ClientValidate() call
if (Page_IsValid == true) {
this.disabled=true;
return true; //if Submit button return true to continue form submit
}
else {
//do whatever here
return false; //if Submit button return false to cancel form submit
}
}