SO - 25381434
by Arun P Johny
HTML
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery.form/3.32/jquery.form.js"></script>
<script src="//cdn.jsdelivr.net/jquery.metadata/2.0/jquery.metadata.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.11.1/jquery.validate.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.11.1/additional-methods.js"></script>
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.1.0/css/bootstrap.css">
<script src="http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.1.0/js/bootstrap.js"></script>
<form id="form" method="post" action="">
<input name="name" />
<input type="submit" class="button" value="Submit" />
</form>
JavaScript
jQuery(function ($) {
jQuery.validator.addMethod("exactLength", function (value, element, param) {
var len = value.length;
if ($.isArray(param)) {
if (param.indexOf(len) !== -1) {
return true;
} else {
return false;
}
} else {
if (param != len) {
return false;
} else {
return true;
}
}
}, function (param, element) {
return "Value must have " + param.join(',') + " characters"
});
var validator = $('#form').validate({
rules: {
name: {
exactLength: [3, 5, 7]
}
},
messages: {}
});
});