mardi 5 mai 2015

Validate and submit form without refreshing the page

I'm validating a form using Validate.js and submitting form values to third party app "Marketo" using their API. The submission happens after validation the form, As you see in the code there's no $.post or $.ajax method, Returning false also doesn't change anything, page still refresh after form submission,

e.preventDefault(); --> Doesn't help as well

  $("#contact_form").validate({


            rules: {
                txtfname: {
                    required: true,
                },
                txtlname: "required",

                txtPhone: {
                    required: true,
                    number:true
                },
                txtemail: "required",
            },
            messages: {
                txtfname: {
                    required: "Please enter your name",
                },
                txtlname: {
                    required: "Please enter your last name"
                },
                phone: {
                    required: "Please enter your phone number",
                    number: "Please enter valid phone number."
                },
                txtemail: {
                    required: "Please enter your email address."
                }
            },
            submitHandler: function(form) {

                paramsForm = form;
                // do other things for a valid form
                var fillFields = marketoMap;

                $.each(marketoMap, function(index, value) {
                    fillFields[index] = $('[name="' + value + '"]', form).val()
                });

                marketoForm.vals(fillFields);
                marketoForm.submit();

                return true;

            }

        });

Aucun commentaire:

Enregistrer un commentaire