javascript - jquery form validator does not with ajax, I can get jquery to validate without ajax and vic versa -


here code not working jquery validator , ajax. code validate , serialize() function seems work because in browser see data not reaching success because refreshed page , data not go mysql. been reading sorts of threads , nothing working.

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.min.js"></script> <script src="http://malsup.github.com/jquery.form.js"></script> <script>     //validate contact form     $(document).ready(function() {         $("#form_contact").validate({             rules: {                 firstname: {                     required: true,                     minlength: 2                 },                 lastname: {                     required: true,                     minlength: 2                 },                 email: {                     required: true,                     email: true                 },                 message: {                     required: true,                     minlength: 2                 }             },             messages: {                 firstname: {                     required: "please enter first name"                 },                 lastname: {                     required: "please enter last name"                 },                 email: {                     required: "please enter email address."                 },                 message: {                     required: "please enter message."                 }             },             submithandler: function(form) {                 var d = $("#form_contact").serialize();                 $.ajax({                     url: '/assets/php/index.php',                     type: 'post',                     //datatype: 'text',                     data: d,                     success: function(data) {                         //$('#form_contact').hide();                         $("#thanks").text("thank message. shortly.");                         $("#form_contact")[0].reset(); // reset form fields on success.                         return false;                     }                 }):             }             return false;         });     }); </script> 

use event.preventdefault() as,

submithandler: function(ev, form) { //i dont know form object doing here, add event object, ev.                 var d = $("#form_contact").serialize();                 $.ajax({                     url: '/assets/php/index.php',                     type: 'post',                     //datatype: 'text',                     data: d,                     success: function(data) {                         //$('#form_contact').hide();                         $("#thanks").text("thank message. shortly.");                         $("#form_contact")[0].reset(); // reset form fields on success.                         //return false; <-- commented out.                     }                 })               //: <-- commented colon character              ev.preventdefault(); //add here prevent form submitting             } 

please read out comments further clarification , don't think need other return false either. i've removed one, chaeck answer code.


Comments