Tuesday, 5 May 2015

How to add Validation rule in jQuery validation Plugin

How to add Validation rule in jQuery validation Plugin

1. Load the validate plugins

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

2. Now call the jQuery validate method

<script>
$(document).ready(function(){
// Add your own custom method

 $("#old_password").rules('add',{remote:"check_password.php",
 messages: {remote: "Passwords do not match"}});

 $("#confirm_password").rules('add',{equalTo: "#password",

  messages: {equalTo: "New password and confirm password do not match"}}); });

controller action

$count=$this->Member->find('count',array(
'conditions'=>array('Member.password'=>md5($_GET['oldPass']),
'Member.id'=>$this->Session->read('Member.id'))));
   if($count>0)
   {
echo 'true'; die;
   } else {
echo 'false'; die;

  }

// validate signup form on keyup and submit
$("#UserAddForm").validate({
rules: {
"data[User][firstname]": "required",
"data[User][lastname]": "required",
"data[User][mobile]": {
required: true,
number: true,
minlength: 10
},
"data[User][password]": {
required: true,
loginRegex: true,
minlength: 8
},
"data[User][confirm_passwd]": {
required: true,
minlength: 8,
equalTo: "#UserPassword"
},
"data[User][email]": {
required: true,
email: true,
mailRegex: true,
               remote:"email_validate.php",
}
},
messages: {
"data[User][firstname]": "Please enter your firstname",
"data[User][lastname]": "Please enter your lastname",
"data[User][mobile]": {
required: "Please provide a mobile number",
number: "Contains only numberic value",
minlength: "Your mobile number must be at least 10 characters long"
},
"data[User][password]": {
required: "Please provide a password",
loginRegex: "Login format not valid",
minlength: "Your password must be at least 8 characters long"
},
"data[User][confirm_passwd]": {
required: "Please provide a password",
minlength: "Your password must be at least 8 characters long",
equalTo: "Please enter the same password as above"
},
"data[User][email]": {
required: "Please provide a email",
mailRegex: "Please provide work email",
email: "Please enter a valid email address",
                remote:"Email already exist. Please check"
     }
}
});

// Add your own custom method "mailRegex" used in email validation 

$.validator.addMethod("mailRegex", function(value, element) {
        return this.optional(element) || /^([\w-\.]+@(?!gmail.com)(?!yahoo.com)(?!hotmail.com)(?!rediffmail.com)(?!outlook.com)(?!aol.com)([\w-]+\.)+[\w-]{2,4})?$/i.test(value);
    }, "No yahoo, gmail or hotmail emails");

// Add your own custom method "loginRegex" used in password validation

$.validator.addMethod("loginRegex", function(value, element) {
        return this.optional(element) || /^(?=\D*\d)(?=[^a-z]*[a-z])[0-9a-z]+$/i.test(value);
    }, "Password must contain only letters, numbers");


});
</script>

0 comments:

Post a Comment