jQuery Validation Plugin library sources
Clone or download
sassquad and Arkni Core: change focus() to trigger("focus") (#2243)
Change focus() to trigger("focus") so that jQuery Migrate 3.x doesn't flag it as deprecated.
Latest commit a9c20ec Dec 13, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github All: Increase number of days of inactivity of stale issues to 60 days ( Jun 28, 2018
build Build: add more release docs Sep 9, 2018
demo Demo: Add sample code for Bootstrap 4 usage (#2173) Jun 20, 2018
lib Core: Support jquery3. Closes #1866 Dec 1, 2016
src Core: change focus() to trigger("focus") (#2243) Dec 13, 2018
test Additional: Add validation rule for mobile number of Russia Federation ( Nov 6, 2018
.editorconfig Use LF to match jQuery Styleguide Jan 16, 2014
.gitattributes Use LF to match jQuery Styleguide Jan 16, 2014
.gitignore Build: Cleanup gitignores, jscs settings, package descriptions Oct 17, 2014
.jscsrc Build: Cleanup gitignores, jscs settings, package descriptions Oct 17, 2014
.jshintignore JSHint: Extract configuration to dotfiles Jan 23, 2014
.jshintrc Build: Bump and merge JSHint/JSCS config May 27, 2014
.travis.yml Build: test on node 6.x and drop node 0.12.x (#2133) Jan 29, 2018
CONTRIBUTING.md README: Fixed wording Dec 2, 2017
Gruntfile.js Build: Generate sub-resource integrity hashes of the distribution fil… May 29, 2018
LICENSE.md Build: Add a copy of the MIT license Jun 16, 2015
README.md Readme: Add jsDelivr hits badge (#2090) Oct 9, 2017
bower.json All: Use https Apr 7, 2017
changelog.md Build: Updating the master version to 1.18.1-pre. Sep 9, 2018
package.json Build: Updating the master version to 1.19.1-pre. Nov 28, 2018
validation.jquery.json All: Fix links after move to organization Apr 7, 2017


jQuery Validation Plugin - Form validation made easy

release Build Status devDependency Status jsDelivr Hits

The jQuery Validation Plugin provides drop-in validation for your existing forms, while making all kinds of customizations to fit your application really easy.

Getting Started

Downloading the prebuilt files

Prebuilt files can be downloaded from https://jqueryvalidation.org/

Downloading the latest changes

The unreleased development files can be obtained by:

  1. Downloading or Forking this repository
  2. Setup the build
  3. Run grunt to create the built files in the "dist" directory

Including it on your page

Include jQuery and the plugin on a page. Then select a form to validate and call the validate method.

	<input required>
<script src="jquery.js"></script>
<script src="jquery.validate.js"></script>

Alternatively include jQuery and the plugin via requirejs in your module.

define(["jquery", "jquery.validate"], function( $ ) {

For more information on how to setup a rules and customizations, check the documentation.

Reporting issues and contributing code

See the Contributing Guidelines for details.

IMPORTANT NOTE ABOUT EMAIL VALIDATION. As of version 1.12.0 this plugin is using the same regular expression that the HTML5 specification suggests for browsers to use. We will follow their lead and use the same check. If you think the specification is wrong, please report the issue to them. If you have different requirements, consider using a custom method. In case you need to adjust the built-in validation regular expression patterns, please follow the documentation.

IMPORTANT NOTE ABOUT REQUIRED METHOD. As of version 1.14.0 this plugin stops trimming white spaces from the value of the attached element. If you want to achieve the same result, you can use the normalizer that can be used to transform the value of an element before validation. This feature was available since v1.15.0. In other words, you can do something like this:

	rules: {
		username: {
			required: true,
			// Using the normalizer to trim the value of the element
			// before validating it.
			// The value of `this` inside the `normalizer` is the corresponding
			// DOMElement. In this example, `this` references the `username` element.
			normalizer: function(value) {
				return $.trim(value);


Copyright © Jörn Zaefferer
Licensed under the MIT license.