$(document).ready(function () { $('#contact-form').validate({ errorClass: "help-block", validClass: 'valid', rules: { 'email': { required: true, email: true, }, 'name': { required: true }, 'contact_code': { required: true }, 'phone': { required: true, number: true, maxlength: 15, minlength:10 }, 'message': { required: true }, }, messages: { 'email': { required: 'Please enter email address.', email: 'Please enter valid email address.', }, 'name': { required: 'Please enter full name.', }, 'contact_code': { required: 'Please select country code.', }, 'phone': { required: 'Please enter phone number.', maxlength: 'Phone number is no more than 15 digits.', number: 'Please specify a valid contact number.', }, 'message': { required: 'Please enter the message.', } }, errorPlacement: function (error, element) { //element.parents('div.form-group').append(error); }, highlight: function (element, errorClass, validClass) { $(element).parents("div.form-group").addClass('has-error').removeClass(validClass); }, invalidHandler: function (form, validator) { var errors = validator.numberOfInvalids(); var errorMsgs = ''; $.each(validator.invalid, function (key, val) { errorMsgs += val + '
'; }); if (errorMsgs) { $.growl.error({title: 'Error!', message: errorMsgs}); } }, unhighlight: function (element, errorClass, validClass) { $(element).parents(".has-error").removeClass('has-error').addClass(validClass); }, submitHandler: function (form) { $('#contact_sub').text('Submit...'); $('#contact_sub').attr('disabled',true); var form = $('#contact-form').serialize(); form[0].submit() } }); });