0

我有以下代码:

"use strict";
var KTCreateAccount = (function () {
    var e,
        t,
        i,
        o,
        r,
        s,
        a = [];
    return {
        init: function () {
            (t = document.querySelector("#kt_modal_create_account")) && (e = new bootstrap.Modal(t)),
                (i = document.querySelector("#kt_create_account_stepper")),
                (o = i.querySelector("#kt_create_account_form")),
                (r = i.querySelector('[data-kt-stepper-action="submit"]')),
                (s = new KTStepper(i)).on("kt.stepper.next", function (e) {
                    console.log("stepper.next");
                    var t = a[e.getCurrentStepIndex() - 1];
                    t
                        ? t.validate().then(function (t) {
                              console.log("validated!"),
                                  "Valid" == t
                                      ? (e.goNext(), KTUtil.scrollTop())
                                      : Swal.fire({
                                            text: "Lo siento, hay errores que debe corregir.",
                                            icon: "error",
                                            buttonsStyling: !1,
                                            confirmButtonText: "Ok, bien!",
                                            customClass: { confirmButton: "btn btn-light" },
                                        }).then(function () {
                                            KTUtil.scrollTop();
                                        });
                          })
                        : (e.goNext(), KTUtil.scrollTop());
                }),
                s.on("kt.stepper.previous", function (e) {
                    console.log("stepper.previous"), e.goPrevious(), KTUtil.scrollTop();
                }),
                a.push(
                    FormValidation.formValidation(o, {
                        fields: { 
                            credito_ingreso_mensual: { validators: { notEmpty: { message: "Ingreso Mensual $" } } } ,
                            credito_antiguedad_trabajo: { validators: { notEmpty: { message: "Antigüedad en el Trabajo" } } },
                            credito_sindicato: { validators: { notEmpty: { message: "Sindicalización" } } },
                            credito_monto_solicitado: { validators: { notEmpty: { message: "Monto Solicitado" } } }, 
                            credito_plazo_solicitado: { validators: { notEmpty: { message: "Plazo Solicitado" } } }, 
                            credito_periocidad_pago: { validators: { notEmpty: { message: "Periocidad del Pago" } } }, 
                            credito_creditos_vigentes: { validators: { notEmpty: { message: "¿Actualmente tiene créditos vigentes?" } } }, 
                            credito_tipo: { validators: { notEmpty: { message: "Tipo de Crédito" } } },
                            credito_destino: { validators: { notEmpty: { message: "Especificar el destino del crédito (no descripciones generales)" } } },
                            credito_canal_pago: { validators: { notEmpty: { message: "Canal de Pago" } } },
                            credito_institucion_financiera_pago: { validators: { notEmpty: { message: "Institución Financiera donde se realizará el depósito de los recursos del crédito" } } },
                            credito_numero_sucursal_plaza: { validators: { notEmpty: { message: "Número de Sucursal y Plaza" } } },
                            credito_clabe: { validators: { notEmpty: { message: "CLABE" } } },
                            credito_numero_cta_bancaria_pagos: { validators: { notEmpty: { message: "Proporcione el número de la cuenta bancaria donde se depositarían los recursos origen del crédito que pudiera autorizarse" } } },
                        },
                        plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap5({ rowSelector: ".fv-row", eleInvalidClass: "", eleValidClass: "" }) },
                    })
                ),
                a.push(
                    FormValidation.formValidation(o, {
                        fields: {
                            personal_ocupacion: { validators: { notEmpty: { message: "Ocupación" } } },
                            personal_identificacion_fiscal: { validators: { notEmpty: { message: "Número de Identificación Fiscal" } } },
                            personal_genero: { validators: { notEmpty: { message: "Género" } } },
                            personal_estudios: { validators: { notEmpty: { message: "Nivel Máximo de Estudios" } } },
                            personal_ciudad: { validators: { notEmpty: { message: "Ciudad" } } },
                            personal_estado: { validators: { notEmpty: { message: "Estado" } } },
                            personal_pais: { validators: { notEmpty: { message: "País" } } },
                        },
                        plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap5({ rowSelector: ".fv-row", eleInvalidClass: "", eleValidClass: "" }) },
                    })
                ),
                a.push(
                    FormValidation.formValidation(o, {
                        fields: {
                            domicilio_calle: { validators: { notEmpty: { message: "Calle" } } },
                            domicilio_exterior: { validators: { notEmpty: { message: "No. Exterior" } } },
                            domicilio_colonia: { validators: { notEmpty: { message: "Colonia" } } },
                            domicilio_cp: { validators: { notEmpty: { message: "Código Postal" } } },
                            domicilio_ciudad: { validators: { notEmpty: { message: "Ciudad" } } },
                            domicilio_estado: { validators: { notEmpty: { message: "Estado" } } },
                            domicilio_pais: { validators: { notEmpty: { message: "País" } } },
                        },
                        plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap5({ rowSelector: ".fv-row", eleInvalidClass: "", eleValidClass: "" }) },
                    })
                ),
                a.push(
                    FormValidation.formValidation(o, {
                        fields: {
                            contacto_calle: { validators: { notEmpty: { message: "Calle" } } },
                            contacto_exterior: { validators: { notEmpty: { message: "No. Exterior" } } },
                            contacto_colonia: { validators: { notEmpty: { message: "Colonia" } } },
                            contacto_cp: { validators: { notEmpty: { message: "Código Postal" } } },
                            contacto_ciudad: { validators: { notEmpty: { message: "Ciudad" } } },
                            contacto_estado: { validators: { notEmpty: { message: "Estado" } } },
                            contacto_pais: { validators: { notEmpty: { message: "País" } } },
                        },
                        plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap5({ rowSelector: ".fv-row", eleInvalidClass: "", eleValidClass: "" }) },
                    })
                ),
                a.push(
                    FormValidation.formValidation(o, {
                        fields: {
                            terceros_dos: { validators: { notEmpty: { message: "Propietario Real" } } },
                            terceros_tres: { validators: { notEmpty: { message: "Datos del Proveedor del Recurso" } } },
                            terceros_nombre: { validators: { notEmpty: { message: "Nombre(s)" } } },
                        },
                        plugins: { trigger: new FormValidation.plugins.Trigger(), bootstrap: new FormValidation.plugins.Bootstrap5({ rowSelector: ".fv-row", eleInvalidClass: "", eleValidClass: "" }) },
                    })
                ),
                r.addEventListener("click", function (t) {
                    t.preventDefault(),
                        (r.disabled = !0),
                        r.setAttribute("data-kt-indicator", "on"),
                        setTimeout(function () {
                            r.removeAttribute("data-kt-indicator"),
                                (r.disabled = !1),
                                Swal.fire({ text: "El formulario ha sido enviado correctamente!", icon: "success", buttonsStyling: !1, confirmButtonText: "Ok, bien!", customClass: { confirmButton: "btn btn-primary" } }).then(function (t) {
                                    t.isConfirmed && e && e.hide();
                                });
                        }, 2e3);
                });
        },
    };
})();
KTUtil.onDOMContentLoaded(function () {
    KTCreateAccount.init();
});

我想验证 terceros_dos 字段(选择框),如果选择“MX”值,则需要 terceros_nombre 字段,否则不需要。

我已经尝试了各种方式,但没有运气,现在我遇到了另一个问题,最后一步没有像其他四个一样得到验证。

仅供参考:我阅读了以下教程https://formvalidation.io/guide/examples/enabling-validators-on-the-fly但我仍然迷路了。

有什么线索吗?谢谢你的帮助。

4

0 回答 0