Hallo Anita,
vielen Dank für die Versions-Informationen.
Diese Möglichkeit gibt es in Visforms leider nicht als eine einfache Konfiguration.
Du kannst das Verhalten allerdings mit etwas eigenem CSS/JavaScript und den Visforms 'Frontend Webassets' erreichen.
Frontend Webassets:
docs.joomla-6.visforms.vi-solutions.de/d...-frontend-webassets/
Alle Einstellungen werden im Formular vorgenommen:
docs.joomla-6.visforms.vi-solutions.de/d...formular-vorgenommen
Das folgende JavaScript für die Version Joomla 6:
A1 - Öffnet den Datums-Picker vorausgewählt am Tag vor 18 Jahren,
wenn das verbundene Eingabe-Feld leer ist.
A2 - Öffnet den Datums-Picker vorausgewählt am ausgewählten Tag,
wenn das verbundene Eingabe-Feld gefüllt ist.
In Bezug auf das folgende JavaScript bitte:
S1 - Die dortige Feld-ID (86) mit deiner Datums-Feld-ID ersetzen.
S2 - Das JavaScript im Parameter 'JavaScript' im Unter-Reiter 'Formular' einfügen.
S3 - Das JavaScript im Parameter 'JavaScript' mit dem dezidierten Speicher-Button direkt am Parameter speichern.
Code:
// console.log('FEWA script loaded');
document.addEventListener('visformsInitialised', () => {
// console.log('visformsInitialised');
const fieldID = '86';
const calendarInput = document.getElementById(`field${fieldID}`);
if (calendarInput && !calendarInput.value) {
const calendarComponent = calendarInput.closest('joomla-calendar') || calendarInput.closest('.field-calendar');
if (calendarComponent) {
calendarComponent.addEventListener('click', function() {
if (!calendarInput.value) {
setTimeout(() => {
const today = new Date();
const pastDate = new Date(today.getFullYear() - 18, today.getMonth(), today.getDate());
const fieldCal = calendarComponent._joomlaCalendar;
if (fieldCal) {
fieldCal.setDate(pastDate);
}
}, 50);
}
});
}
}
});
Hinweise:
H1 - Die Einstellung für den Startwert must du in der Feld-Konfiguration entfernen (siehe A2).
H2 - Der im Datums-Picker vorausgewählte Tag vor 18 Jahren muss mit der Maus angeklickt werden, damit das Datum übernommen wird.
Liebe Grüße, Ingmar