Quiero bloquear casi todas las casillas de verificación, quiero que solo estén disponibles 2 y 4 días de la semana. ¿Alguien sabe como hacer esto?
Actualmente tiene este código:
<input class="unstyled" type="date" id="datapicker">
const date = new Date();
currentDate = date.toISOString().slice(0,10);
document.getElementById('datapicker').value = currentDate;
document.getElementById('datapicker').min = currentDate;
Solución del problema
Hay un artículo sobre este tema: Selector de fechas en HTML5. Eche un vistazo a la sección "No se pueden eliminar días, pero aquí hay una solución alternativa sugerida". No puede restringir días específicos usando solo marcado, pero el autor sugiere la siguiente solución:
var date = document.querySelector('[type=date]');
function noMondays(e){
var day = new Date( e.target.value ).getUTCDay();
// Days in JS range from 0-6 where 0 is Sunday and 6 is Saturday
if( day == 1 ){
e.target.setCustomValidity('OH NOES! We hate Mondays! Please pick any day but Monday.');
} else {
e.target.setCustomValidity('');
}
}
date.addEventListener('input',noMondays);
También hay un argumento de paso, pero solo le permite limitar la brecha particular entre días (por ejemplo, cada dos días):
<input class="unstyled" type="date" id="datapicker" step="2">
No hay comentarios.:
Publicar un comentario