$().ready(function() { $('#form').on('keyup keypress', function(e) { var keyCode = e.keyCode || e.which; if (keyCode === 13) { $('#form').validate().checkForm() e.preventDefault(); return false; } }); var validator = $("#form").validate({ errorClass: 'text-danger', onkeyup: false, rules: { curp: { required: true, regex: true, curpExiste: true, curpDatos:true, maxlength: 18, }, email: { required: true, email: true }, email2: { equalTo: "#email" }, agree: "required", }, messages: { curp:{ required: "Este campo es obligatorio.", } }, invalidHandler: function() { console.log( validator.numberOfInvalids() + " field(s) are invalid" ); }, submitHandler: function(form) { console.log("Enviar form"); form.submit(); } }); $.validator.addMethod( "regex", function(value, element, regexp) { if (regexp.constructor != RegExp) regexp = new RegExp(regexp); else if (regexp.global) regexp.lastIndex = 0; return this.optional(element) || regexp.test(value); }, "No cumple con el formato." ); $.validator.addMethod( "curpExiste", function(value, element) { var resultado = false; jQuery.ajax({ type: "POST", url: 'https://apps.segro.edu.mx/recategorizacion/js/validar_curp', data: { curp : value }, dataType: 'json', async: false, success: function( data ){ if(data){ resultado = true; } } }); console.log("EXISTE: " + resultado); return resultado; }, "La CURP ingresada, no corresponde o está escrita de forma errónea Favor de verificar. Si el problema persiste, comuníquese a mesa de AYUDA." ); $.validator.addMethod( "curpDatos", function(value, element) { var resultado = false; jQuery.ajax({ type: "POST", cache: false, url: 'https://apps.segro.edu.mx/recategorizacion/js/curp_registrado', data: { curp : value }, dataType: 'json', async: false, success: function( data ){ if(data){ if(data.exito){ console.log(data); $("#nombre").val( data.persona.nombre ); $("#primer_ap").val( data.persona.primer_ap ); $("#segundo_ap").val( data.persona.segundo_ap ); $("#curp2").val( data.persona.curp ); $("#password").val( data.persona.rfc ); if( data.persona.activado == 0 ){ resultado = true; $("#oculto").removeClass("d-none"); }else{ $("#oculto").addClass("d-none") } } } } }); console.log("REGISTRADO: " + resultado); return resultado; }, "Esta CURP ya se encuentra registrada, favor de ingresar desde la pantalla principal" ); $("#curp").rules("add", { regex: /^[A-Za-z]{4}\d{6}[HMhm][A-Za-z]{2}[B-DF-HJ-NP-TV-Zb-df-hj-np-tv-z]{3}[A-Za-z0-9][0-9]$/ }); }); jQuery.extend(jQuery.validator.messages, { required: "Este campo es obligatorio.", remote: "Por favor, rellena este campo.", email: "Por favor, escribe una dirección de correo válida", url: "Por favor, escribe una URL válida.", date: "Por favor, escribe una fecha válida.", dateISO: "Por favor, escribe una fecha (ISO) válida.", number: "Por favor, escribe un número entero válido.", digits: "Por favor, escribe sólo dígitos.", creditcard: "Por favor, escribe un número de tarjeta válido.", equalTo: "Por favor, escribe el mismo valor de nuevo.", accept: "Por favor, escribe un valor con una extensión aceptada.", maxlength: jQuery.validator.format("Por favor, no escribas más de {0} caracteres."), minlength: jQuery.validator.format("Por favor, no escribas menos de {0} caracteres."), rangelength: jQuery.validator.format("Por favor, escribe un valor entre {0} y {1} caracteres."), range: jQuery.validator.format("Por favor, escribe un valor entre {0} y {1}."), max: jQuery.validator.format("Por favor, escribe un valor menor o igual a {0}."), min: jQuery.validator.format("Por favor, escribe un valor mayor o igual a {0}.") });