Istražimo zajedno svemir mogućnosti

Ljetna astro škola

let showThisFieldIf = { ime_roditelj: { godine: ["Ne"], // Ako je korisnik mlađi od 18 godina (odabrao "Ne") }, email_roditelj: { godine: ["Ne"], // Ako je korisnik mlađi od 18 godina (odabrao "Ne") }, mobitel_roditelj: { godine: ["Ne"], // Ako je korisnik mlađi od 18 godina (odabrao "Ne") }, } document.addEventListener('DOMContentLoaded', conditionalFormFieldFunc); document.addEventListener('DOMContentLoaded', function() { jQuery(document).on('elementor/popup/show', (event, id, instance) => { conditionalFormFieldFunc(); }); }); function conditionalFormFieldFunc() { function testLogic() { let godineInput = document.querySelector('[name="form_fields[godine]"]:checked'); // Dohvati odabrani radio button (Da/Ne) if (!godineInput) return; let godineValue = godineInput.value; // Dobij vrijednost odabranog radio buttona // Ako je korisnik mlađi od 18 godina (odabrao "Ne") if (godineValue === "Ne") { // Prikaži i postavi obaveznost za polja roditelja for (const [conditionalInputID, condition] of Object.entries(showThisFieldIf)) { let conditionalInput = setInputsElemArray(conditionalInputID); conditionalInput.forEach(e => { e.closest('.elementor-field-group').style.display = "block"; // Prikaži polje e.setAttribute('required', 'required'); // Postavi kao obavezno }); } } else { // Sakrij i ukloni obaveznost za polja roditelja (odabrano "Da") for (const [conditionalInputID, condition] of Object.entries(showThisFieldIf)) { let conditionalInput = setInputsElemArray(conditionalInputID); conditionalInput.forEach(e => { e.closest('.elementor-field-group').style.display = "none"; // Sakrij polje e.removeAttribute('required'); // Ukloni obaveznost }); } } } testLogic(); /* Dodaj event listener za radio dugmad koja sluša promjenu */ let godineInputs = document.querySelectorAll('[name="form_fields[godine]"]'); godineInputs.forEach(input => { input.addEventListener('change', function() { testLogic(); }); }); function setInputsElemArray(ID) { let selectors = `[name="form_fields[${ID}]"]`; let inputs = Array.from(document.querySelectorAll(selectors)); if (!inputs.length) { selectors = `[name="form_fields[${ID}][]"]`; inputs = Array.from(document.querySelectorAll(selectors)); } return inputs; } } document.addEventListener('DOMContentLoaded', function() { // Dohvati radio dugmad za "Imam više od 18 godina" const godineInputs = document.querySelectorAll('[name="form_fields[godine]"]'); // Radio dugmad za Da/Ne // Dohvati elemente za polja roditelja const parentFields = document.querySelectorAll('.elementor-field-group-ime_roditelj, .elementor-field-group-email_roditelj, .elementor-field-group-mobitel_roditelj'); // Funkcija koja uvjetno prikazuje ili skriva polja roditelja function toggleParentFields() { let selectedValue = document.querySelector('[name="form_fields[godine]"]:checked').value; // Dobij odabranu vrijednost (Da/Ne) if (selectedValue === "Ne") { // Ako je odabrano "Ne" (mlađi od 18 godina) parentFields.forEach(field => { field.style.display = 'block'; // Prikaži polja roditelja field.querySelector('input').setAttribute('required', 'required'); // Postavi kao obavezna }); } else { // Ako je odabrano "Da" (18 ili više godina) parentFields.forEach(field => { field.style.display = 'none'; // Sakrij polja roditelja field.querySelector('input').removeAttribute('required'); // Ukloni obaveznost }); } } // Dodaj event listener za promjenu odabira radio dugmadi godineInputs.forEach(input => { input.addEventListener('change', toggleParentFields); }); // Pokreni funkciju odmah nakon učitavanja stranice kako bi se ispravno postavila polja toggleParentFields(); });

Prijavnica - Ljetna astro škola

Skip to content