Agregar validación de fecha “dd-mm-yyyy” con JQuery Validate

by | May 25, 2020

Para agregar una validación especifica con Jquery Validate debes agregar un nuevo método de la siguiente forma:

$.validator.addMethod("fecha", function(value, element){
    return this.optional(element) || /^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$/.test(value);
}, "Fecha incorrecta.");
Luego, agregar en la validación esto:

var validator = $("form[id='frm']").validate({
            rules: {
                fechaNacimiento: {
                    required:true,
                    fecha: true
                },
            },
            messages: {
                fechaNacimiento: {
                    required: "Debe Ingresar Fecha de Nacieminto",
                    fecha: "Debe Ingresar una Fecha Valida"
                },
            }
        });