Scusa ma non bastava validare l'input con type="date" ?
codice:<input type="date" name="dateend" id="dateend" required> <script> const dateend = document.getElementById('dateend') dateend.value = new Date().toLocaleDateString('en-CA') dateend.addEventListener('change', () => { const myDate = new Date(dateend.value) const enDate = (new Intl.DateTimeFormat('en-GB', { dateStyle: 'short' }).format(myDate)).replaceAll('/','-') console.log(dateend.value, enDate) }) </script>