How to Enable and Disable Client-Side Validation in MVC

How to Enable and Disable Client-Side Validation in MVC

31 Mar 2024
4 min read

Client-Side Validation in MVC: An Overview

In this MVC Tutorial, we will see how to enable and disable Client-side validation. MVC3 & MVC4 supports unobtrusive client-side validation in which validation rules are defined using attributes added to the generated HTML elements. These rules are interpreted by the included JavaScript library and use the attribute values to configure the jQuery Validation library which does the actual validation work.

In this article, I would like to demonstrate various ways of enabling or disabling client-side validation.

Read More: MVC Interview Questions and Answers

Enable Client-Side Validation in MVC

For enabling client-side validation, we are required to include the jQuery min, validate & unobtrusive scripts in our view or layout page in the following order.

 <script src="@Url.Content("~/Scripts/jquery-1.6.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>

The order of included files, as shown above, is fixed since the below javascript library depends on the top javascript library.

Enabling and Disabling Client-Side Validation at Application Level

We can enable and disable the client-side validation by setting the values of ClientValidationEnabled & UnobtrusiveJavaScriptEnabled keys to true or false. This setting will be applied to the application level.

<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>

For client-side validation, the values of both keys must be true. When we create a new project using Visual Studio in MVC3 or MVC4, by default the values of both the keys are set to true.

We can also enable the client-side validation programmatically. For this, we need to do code within the Application_Start() event of the Global.asax, as shown below.

 protected void Application_Start() 
//Enable or Disable Client Side Validation at Application Level
HtmlHelper.ClientValidationEnabled = true;
HtmlHelper.UnobtrusiveJavaScriptEnabled = true;

Enabling and Disabling Client-Side Validation for Specific View

We can also enable or disable client-side validation for a specific view. For this, we are required to enable or disable client-side validation inside a Razor code block as shown below. This option will override the application level settings for that specific view.

 @model MvcApp.Models.Appointment
ViewBag.Title = "Make A Booking";
HtmlHelper.ClientValidationEnabled = false;

I hope you will enjoy the tricks while programming with MVC3 & MVC4. I would like to have feedback from my blog readers. Your valuable feedback, questions, or comments about this article are always welcome. Enjoy Coding...!

Unlock the Next Level of MVC


Q1. How to remove client-side validation in MVC?

By setting the values of ClientValidationEnabled & UnobtrusiveJavaScriptEnabled keys to true or false.

Q2. How to disable request validation in MVC?

We can use the [ValidateInput(false)] attribute

Q3. How to do client-side validation in asp net core MVC?

For this,tell jQuery Unobtrusive Validation to parse the dynamic form immediately after you create it
Share Article
Batches Schedule
About Author
Shailendra Chauhan (Microsoft MVP, Founder & CEO at Scholarhat by DotNetTricks)

Shailendra Chauhan is the Founder and CEO at ScholarHat by DotNetTricks which is a brand when it comes to e-Learning. He provides training and consultation over an array of technologies like Cloud, .NET, Angular, React, Node, Microservices, Containers and Mobile Apps development. He has been awarded Microsoft MVP 8th time in a row (2016-2023). He has changed many lives with his writings and unique training programs. He has a number of most sought-after books to his name which has helped job aspirants in cracking tough interviews with ease.
Self-paced Membership
  • 22+ Courses
  • 750+ Hands-On Labs
  • 300+ Quick Notes
  • 55+ Skill Tests
  • 45+ Interview Q&A
  • 10+ Real-world Projects
  • Career Coaching
  • Email Support
Upto 66% OFF

To get full access to all courses

Accept cookies & close this