GOOGLE ADS

jueves, 14 de abril de 2022

Cómo bloquear todos los campos y desbloquear los seleccionados para un selector de fecha HTML

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

Flutter: error de rango al acceder a la respuesta JSON

Estoy accediendo a una respuesta JSON con la siguiente estructura. { "fullName": "FirstName LastName", "listings...