How to bypass validation for a button in ASP.NET?
C#asp.netValidationC# Problem Overview
I have an ASP.NET form that takes input from a user. There's a Submit
button on the form and a button called Calc
which does a calculation to populate a text field. The problem I'm having is that on the form I have a set of <ASP:REQUIREDFIELDVALIDATOR>
validators and when the Calc
button is pressed the form gets validated. I don't want the required fields to be validated when the Calc
button is pressed, only the Submit
button. Any way around this?
C# Solutions
Solution 1 - C#
Set the CausesValidation
property to false.
Solution 2 - C#
<asp:Button runat="Server" ... CausesValidation="False" />
Button.CausesValidation (If I remember correctly).
Solution 3 - C#
Try putting CausesValidation="false"
as a button attribute.
Some sample code:
http://weblogs.asp.net/scottgu/archive/2005/08/04/421647.aspx
Solution 4 - C#
>ASPX Page:
<asp:Button ID="buttonNew" runat="server" Text="New" CausesValidation="False" />
OR
>CodeBehind Page: (.cs)
buttonNew.CausesValidation = false;
Check here to know more about Validated
and Validating
events for the controls.
Solution 5 - C#
Set the button.causesValidation to false.
However, if all it is doing is calculating something based on user input then you shouldn't have it posting back at all. I would recommend using an HTML button and attach some javascript to it to do your work for you and then you won't have this problem.
Solution 6 - C#
While designing the button, you can set its property CausesValidation="false" to avoid validation on button click event. It does not allow to validation the server control and perform its click event only
Solution 7 - C#
You should use this
UseSubmitBehavior="False"
Solution 8 - C#
To disable validation in a specific control
Set the control's CausesValidation property to false.
<asp:Button id="Button3" runat="server"
Text="Cancel" CausesValidation="False">
</asp:Button>
To disable a validation control
Set the validation controls Enabled property to false.
To disable client-side validation
Set the validation controls EnableClientScript property to false.