ValidateAjax = {
initialize: function(formid, endpoint){
end_url = endpoint;
form_id = '#' + formid;
$(form_id+' input').blur(function(){
var formElementID = $(this).attr('id');
ValidateAjax.doValidate(formElementID);
return false;
});
$(form_id).submit(function(){
$(form_id+' input').each(function(){
var formElementID = $(this).attr('id');
ValidateAjax.doValidate(formElementID);
});
});
},
doValidate: function(id){
var url = end_url;
var data = $(form_id).serialize();
$.post(url,data,function(response){
$('#'+id+'Error').find('.error').remove();
if (response[id])
$('#'+id+'Error').append(ValidateAjax.getHTML(response[id]));
},'json');
},
getHTML: function(errArray){
var object = '
';
$.each(errArray,function(key,value){
object += value;
});
object += '
';
return object;
}
$(document).ready(function(){
//Set watermark on input fields
$('#username').watermark(watermark_username);
$('#email').watermark(watermark_email);
$('#password').watermark(watermark_password);
// validation
ValidateAjax.initialize('registrationForm', '/registration/validateform');
public function indexAction() {
$form = new Application_Form_Registration();
if ($this->_request->isPost()) {
$formData = $this->_request->getPost();
// if form is valid, send mail to the user and store user into the database
if ($form->isValid($formData)) {
echo 'success';
$this->registerUser();
}
else {
echo 'failure';
}
}
$this->view->form = $form;
}
public function validateformAction(){
$form = new Application_Form_Registration();
$form->isValidPartial($_POST);
$this->_helper->json($form->getMessages());
}