Good day! How to make a form validation only by pressing a button using jquery validation, and then when you change the field, he immediately checks it. Validator Code:

$("form[id='loginform']").validate({ rules:{ email:{ required: true, email: true, minlength: 4, maxlength: 36, }, password:{ required: true, minlength: 6, maxlength: 36, remote: { url: "index.php?route=account/login/validatex", type: "post", data: { email: function() { return $( "#email" ).val(); }, password: function() { return $( "#password" ).val(); } }, success: function(response) { console.log(response); if(response == true){ // $("#btnlogin").click(function(){ // window.location.href = location.protocol + '//' + location.host + location.pathname+"/index.php?route=account/account"; // }); }else{ alert('Π›ΠΎΠ³ΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π½Π΅ Π²Π΅Ρ€Π½Ρ‹'); } }, error: function(response) { console.log(response); } } }, }, messages:{ email:{ required: "ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ для заполнСния", email:"Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ", minlength: "e-mail Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 4 символа", maxlength: "максимальноС число символо - 36", }, password:{ required: "ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ для заполнСния", minlength: "ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 6 символов", maxlength: "максимальноС число символо - 36", remote: "Π»ΠΎΠ³ΠΈΠ½ ΠΈΠ»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π½Π΅ Π²Π΅Ρ€Π½Ρ‹", }, }}); 

    1 answer 1

    Solved the problem by adding a remote to a new method.

     var validatePassStatus = null; jQuery.validator .addMethod( 'validatePass', function() { $.ajax({ url: "index.php?route=account/login/validatex", async: false, type: 'post', data: { email: function() { return $( "#email" ).val(); }, password: function() { return $( "#password" ).val(); } }, success: function(data) { console.log(data); if(data == 'true'){ }else{ validatePassStatus = data.status; } }, complete: function(){}, error: function(){} }); return true; }, jQuery.validator.format("НСвСрный ΠΏΠ°Ρ€ΠΎΠ»ΡŒ") ); $("form[id='loginform']").validate({ rules:{ email:{ required: true, email: true, minlength: 4, maxlength: 36, }, password:{ required: true, minlength: 6, maxlength: 36, validatePass: "", }, }, messages:{ email:{ required: "ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ для заполнСния", email:"Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ", minlength: "e-mail Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 4 символа", maxlength: "максимальноС число символо - 36", }, password:{ required: "ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ для заполнСния", minlength: "ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 6 символов", maxlength: "максимальноС число символо - 36", validatePass: "НСвСрный ΠΏΠ°Ρ€ΠΎΠ»ΡŒ", }, submitHandler: function(form) { form.submit(); } } });