type - ¿Patrón HTML5 para formatear el cuadro de entrada para tomar la fecha mm/dd/aaaa?
insertar fecha en formulario html (5)
Usé jQuery datepicker y quiero restringir mi campo de entrada con un patrón HTML5 si un usuario, en lugar de obtener la fecha de jQuery datepicker, escribe la fecha.
¿Cómo puedo restringir a mis usuarios con un patrón HTML5 para que solo puedan escribir la fecha en el formato mm/dd/yyyy
?
El patrón de abajo funciona perfectamente en el año bisiesto y también con las fechas normales. El formato de la fecha es: YYYY-MM-DD.
<input type="text" placeholder="YYYY-MM-DD" pattern="(?:19|20)(?:(?:[13579][26]|[02468][048])-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))|(?:[0-9]{2}-(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:29|30))|(?:(?:0[13578]|1[02])-31)))" class="form-control " name="eventDate" id="" required autofocus autocomplete="nope">
Obtuve esta solución de website . Espero que pueda ayudar a alguien.
La forma más sencilla es usar el atributo de solo lectura para evitar la entrada directa del usuario:
<input class="datepicker" type="text" name="date" value="" readonly />
O podrías usar la validación de HTML5 basada en el atributo de patrón. Patrón de entrada de fecha (dd / mm / aaaa o mm / dd / aaaa):
<input type="text" pattern="/d{1,2}//d{1,2}//d{4}" class="datepicker" name="date" value="" />
Tratar de usar:
pattern="(0?[1-9]|[12][0-9]|3[01])/(0?[1-9]|1[012])//d{4}"
Yo uso este website y este patrón también hace la validación del año bisiesto.
<input type="text" pattern="(?:19|20)[0-9]{2}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-9])|(?:(?!02)(?:0[1-9]|1[0-2])-(?:30))|(?:(?:0[13578]|1[02])-31))" required />
patrón = "[0-9] {1,2} / [0-9] {1,2} / [0-9] {4}"
Este es un patrón para ingresar la fecha del cuadro de texto en HTML5.
El primero [0-9] {1,2} tomará solo el número decimal mínimo 1 y máximo 2.
Y otra similar.