Los nuevos tipos de entrada de formulario en html5
Formularios HTML se centran alrededor de los humildes, pero flexible entrada elemento. HTML5 añade una serie de formas muy útiles de entrada que ayudan a convertir HTML en una herramienta de interfaz de usuario más moderno.
Aunque el apoyo a estas etiquetas no es universal, es seguro para comenzar a usar ahora. Cualquier navegador (incluso IE6) que no entienden los tipos de entrada avanzadas volverán a input type = "texto", que todavía funciona exactamente como se esperaba (aunque no con las mejoras de validación y la interfaz de usuario de las etiquetas más nuevas).
La norma indica que contarán con el apoyo de los distintos tipos, pero la forma exacta se admiten los elementos puede variar de un navegador a otro. Por ejemplo, el campo de correo electrónico puede tener un aspecto como un campo de texto normal a un usuario en una computadora de escritorio estándar, pero el teclado virtual en un dispositivo móvil puede cambiar para incluir el @ cuando encuentra un campo de correo electrónico.
La mayoría de estos campos de especialidad apoyar la validación, por lo que, como mínimo, es útil para establecer un : inválido Estilo CSS para que el usuario puede saber si los datos están en el campo. Estos son los tipos de entrada con la codificación de la muestra:
color: Permite al usuario elegir un color usando formatos web estándar - nombres reconocidos de color (amarillo) y los valores hexadecimales precedidos por un símbolo # (# FF0033).
fecha: Algunos navegadores (Firefox 3.5) muestran un campo de texto, otros (Opera 10) muestran un control de calendario especial, todavía otros navegadores (Chrome) incluir tanto texto como un calendario emergente. Si la fecha se introduce texto, se debe introducir en un formato aaaa-mm-dd:
Puede restringir las fechas permitidas a un rango específico mediante la aplicación de la min y max atributos al elemento.
hora: El tiempo se almacena en el formato hh: mm. Algunos navegadores incluyen dos puntos directamente en el campo, y algunos modifican el teclado virtual con los números y el carácter de dos puntos. También es posible que un navegador aparecerá una especie de selector de tiempo personalizado, pero esto aún no se admite en ningún principales navegadores.
fecha y hora: Combina fecha y hora en un solo elemento. También incluye un mecanismo para entrar en la zona horaria.
Algunos navegadores pop-up un control de calendario para la fecha y una entrada con formato para la época. Otros pueden modificar los teclados virtuales para la fecha y tiempo de entrada.
El formato de la fecha y hora oficial completa de regresar de la fecha y hora diferentes elementos es un código especializado: aaaa-mm-ddThh: mm + ff: gg:
aaaa: Cuatro dígitos para el año.
-: Un carácter de guión real, que debe ser colocado entre el año y el mes. Otro tablero se coloca entre el mes y el día.
mm: Dos dígitos para el mes.
dd: Dos dígitos para el día.
T: La capital T indica el comienzo de la parte de tiempo del código.
hh: Dos dígitos para la hora, en formato de 24 horas.
:: El carácter de dos puntos entre las horas y los minutos. Aparece otro dos puntos entre las horas y los minutos de desplazamiento de la zona horaria.
mm: Dos dígitos para los minutos.
+/ - / Z: El desplazamiento de zona horaria se indica por un capital Z (si el tiempo es Zulu o GMT tiempo) o el símbolo + o - si el tiempo es en otra zona horaria.
ff: Si la zona horaria no es hora zulú, indicar el número de desplazamiento de GMT horas.
gg: Número de compensación de vez Zulu minutos. Típicamente, esto es 00, pero es posible que la zona horaria será compensado por 15, 30, o 45 minutos.
Por ejemplo, 17:30 el 11 de octubre de 2011, en la ciudad de Nueva York se ve así:
2011-10-11T17: 30-05: 00
La necesidad de la fecha y hora para estar en este formato para ser considerada válida para los navegadores que validan una fecha y hora campo.
-datetime locales: Al igual que el fecha y hora elemento sin un indicador de zona horaria:
correo electrónico: Esto parece un campo de texto sin formato, pero puede ser modificado de acuerdo a cómo se accede.
meses: Esto genera un año de cuatro dígitos seguido de un mes de dos dígitos:
número: Los datos numéricos pueden consistir en un campo de texto, seguido de algún tipo de selección (por ejemplo, y las flechas hacia abajo), o esta etiqueta pueden cambiar el teclado virtual de un dispositivo portátil para manejar única entrada numérica.
los número tipo de entrada es compatible con varios atributos especiales:
min: El valor mínimo permitido.
max: El valor máximo permitido.
paso: Este valor indica la cantidad de las herramientas de la interfaz visual (por lo general pequeñas flechas arriba y abajo) cambian el valor cuando se activa.
valor: El valor numérico del elemento.
Todos los atributos de la número elemento puede ser entero o punto flotante. Sin embargo, los navegadores actuales que apoyan esta etiqueta (Opera y Chrome) no parecen validar así con los valores de punto flotante como lo hacen con valores enteros. Para un mayor control de entrada numérica, considere la alcance tipo de entrada.
alcance: La mayoría de los kits de herramientas de interfaz de usuario tienen algún tipo de mecanismo de control deslizante o barra de desplazamiento, lo que hace que sea fácil para los usuarios introducir un valor numérico visualmente. los "alcance"> construir finalmente añade esta funcionalidad para formularios HTML.
los alcance de entrada toma los mismos atributos que número, min, max, valor, y paso. Si el navegador es compatible con la alcance etiqueta, el usuario verá un scroller- si no, aparecerá un tipo de entrada de texto sin formato.
los alcance Tipo no muestra el valor exacto, y puede ser más difícil obtener resultados precisos que con el número tipo de entrada. Una solución consiste en emparejar un salida etiqueta al alcance, y el uso de javascript para actualizar la salida cuando se cambia la gama. Un formulario de ejemplo que incorpora esta idea:
Cuando el alcance valor se cambia, se llama a una función javascript llamada updateOutput:
función updateOutput () {// obtener elementsvar myRange = document.getElementById ("myRange") - var myOutput = document.getElementById ("myOutput") - copiar el valor overmyOutput.value = myRange.value- //} function final //
Como el número tipo de entrada, el alcance se pueden dar valores de punto flotante, si quieres.
buscar: Se utiliza para recuperar el texto que está destinado a ser utilizado como parte de una búsqueda (ya sea interna o a través de un servicio de búsqueda). En la mayoría de los navegadores, esta etiqueta se muestra como un campo de texto normal. Se hace a veces tiene un comportamiento especial. En Safari, el campo de búsqueda se muestra con un pequeño X, que borra el contenido de la búsqueda. En Chrome, el autocompletado características de la barra de búsqueda principal (que es también el elemento de entrada URL en Chrome) se aplican automáticamente al cuadro de búsqueda.
Al igual que los otros nuevos tipos de entrada, no hay penalización por el uso de la buscar elemento en los navegadores que no soportan. El retroceso es una entrada de texto sin formato.
los buscar elemento en realidad no hace ningún búsqueda. Para que sea más funcional, tiene que escribir algo de código.
tel: Este campo espera tres dígitos seguidos de un guión y cuatro dígitos - un número de teléfono local. Puede que tenga que jugar con el patrón atribuir si desea permitir que un código de área o extensiones para validar.
url: Los navegadores que soportan este elemento comprobará la http: // prefijo para una dirección Web. Navegadores móviles también pueden adaptar el teclado virtual para incluir personajes que se encuentran comúnmente en las URL: los dos puntos (:), barra diagonal (/), y la tilde (~).
semana: Le permite al usuario elegir una semana a partir de un control de calendario. Devuelve un valor en el siguiente formato: aaaa-Wnn
aaaa: Representa un año de cuatro dígitos.
-: El carácter de guión.
W: La capital W personaje.
nn: La semana como un número de dos dígitos.
Algunos navegadores estallar para arriba el control de calendario estándar. Cuando el usuario selecciona una fecha (o una semana), se devolverán sólo el año y la semana. Otros navegadores simplemente validan para el formato adecuado.