Skip to content Skip to sidebar Skip to footer

Parsley.js Submit Form Not Working When Using Addasyncvalidator And Remote

I have a registration form split into blocks that was working perfectly using this code based on one of the examples from the website: $('.register-next').on('click', f

Solution 1:

I finally got this working. There is probably a far easier way to do it but this works.

firstly, I made one mistake with my code, I needed to return true if the status was 200

$('#username').parsley().addAsyncValidator(
          'validateUsername', function (xhr) {
               varUserLogin = $('#username').parsley();

               window.ParsleyUI.removeError(UserLogin,'errorUsername');


               if(xhr.status == '200'){

                    returntrue;
               }

               if(xhr.status == '404'){
                    response = $.parseJSON(xhr.responseText);
                    console.log("username exists");
                    window.ParsleyUI.addError(UserLogin,'errorUsername',response.error);
               }
          }, 'inc/check_username.php'
        );

I then added an additional piece of code to listen for the submit button to be clicked and remove parsley validation from the form before using javascript to submit

$('#new-user-submit').click(function(){

            $('#form-register').parsley().asyncValidate()
                .done(function(){
                    $('#form-register').parsley().destroy(); 
                    $('#form-register').submit(); });
});

I'm not a big user of javascript so it normally takes me a while to work my way through these things but I thought with parsley being so popular there would be far better support and documentation for it.

Post a Comment for "Parsley.js Submit Form Not Working When Using Addasyncvalidator And Remote"