https://youtu.be/l1dZ_xgqCsg
<script>const showThisFieldIf = {
modelo: {
seleccionaropciones: [3, 4], // Mantenimiento y Repuestos
},
version: {
seleccionaropciones: [3, 4],
},
kilometraje: {
seleccionaropciones: [3, 4],
},
patente: {
seleccionaropciones: [3, 4],
},
chasis: {
seleccionaropciones: [3, 4],
},
};
function conditionalFormFieldFunc() {
function testLogic() {
for (const [conditionalInputID, condition] of Object.entries(
const conditionalInput = setInputsElemArray(
let match = false; // Cambiar a `false` para permitir múltiples coincidencias
for (const [conditionID, conditionValues] of Object.entries(condition)) {
const inputs = setInputsElemArray(
const selectedInputs = [];
inputs.forEach((input, i) => {
if (input.checked) {
selectedInputs.push(i);
}
});
if (inputs[0].tagName === 'SELECT') {
selectedInputs.push(inputs[0].
}
const adjustedConditionValues = conditionValues.map(e => e - 1);
// Verificar si al menos una opción seleccionada coincide con los valores esperados
if (adjustedConditionValues.some(
match = true;
}
}
// Mostrar si hay coincidencia, ocultar en caso contrario
conditionalInput.forEach(e => {
e.closest('.elementor-field-
});
}
}
function setInputsElemArray(ID) {
const selectors = `[name="form_fields[${ID}]"]`;
let inputs = Array.from(document.
if (!inputs.length) {
inputs = Array.from(document.
}
return inputs;
}
testLogic();
/* Agregar event listeners */
for (const [conditionalInputID, condition] of Object.entries(
for (const [conditionID, conditionValues] of Object.entries(condition)) {
const inputs = setInputsElemArray(
inputs.forEach(input => {
input.addEventListener('input'
testLogic();
});
});
}
}
}
document.addEventListener('
jQuery(document).on('
conditionalFormFieldFunc();
});
</script>
0 Comentarios