DE .NET, SQLSERVER Y MÁS, APRENDE CONMIGO!✔

Desarrollo de todo tipo de aplicaciones y Administración de Base de datos con Tecnología Microsoft


UNETE

Creación de formularios para recopilar datos y validar la entrada del usuario

0




HTML5 nos trae varias novedades para nuestros formularios que podemos implementar actualmente. Muchos navegadores empiezan a implementar algunas de sus características.

En el caso de que utilicemos estas características y el navegador no sea compatible con las mismas, simplemente las ignorará sin causarnos mayores problemas.  Incluso podremos condicionar nuestros scripts para que funcionen solo en navegadores sin soporte para las nuevas características de manejo de formularios, por ejemplo si tenemos un script de selección de fechas podremos hacer que funcione solo en Internet Explorer pero que en Opera sea el mismo navegador el que se encargué de mostrarnos su selector de fechas.

Placeholder

Si no disponemos de las características de los nuevos formularios HTML5, la forma común de hacer un placeholder sería con JavaScript jugando con los eventos de focos. Hoy en día, podemos con este atributo agregar un texto que se verá en el input cuando este esté vacío y no tenga el autofocus.


<input type=”text” placeholder=”Buscar en VirtualTec…”>

Actualmente es soportado por los navegadores Chrome y Safari. Si realmente deseas utilizarlo para otros navegadores puedes recurrir al plugin de  jQuery placeholder.

Autofocus

Otra muy buena ventaja de los formularios en HTML5, este es otro claro ejemplo que permite el control del autofoco sin hacer uso de JavaScript, como se hubiera hecho antes. Como su nombre lo indica, con autofocus establecemos que un input tendrá el foco. No tiene mucha ciencia, simplemente agregamos autofocus en el  elemento:

<input id=”Vt” type=”text” autofocus>

 

Nuevos tipos de <input>

Dentro de la gran cantidad de novedades que nos ofrece  HTML5 son los nuevos valores para el atributo “type” del elemento input.

Estos nuevos tipos de campos hacen que los navegadores adopten distintos comportamientos que, sin dudas, nos van a hacer la vida más fácil a los desarrolladores de sitios web.

Así como actualmente tenemos el conocido “password” que oculta la contraseña con asteriscos o círculos (dependiendo del navegador) ahora contamos con el nuevo “search” que presenta una pequeña cruz para poder borrar su contenido o también el nuevo campo numérico “number” que muestra dos flechas (hacia arriba y hacia abajo) para aumentar o disminuir el valor del número.

Algo muy importante a tener en cuenta es que si bien estos elementos todavía no son soportados por todos los navegadores modernos, el uso de los mismos no afectará de ningún modo en los navegadores que no los soporten, actuarán simplemente como si fuesen del tipo “text“.

Veamos entonces algunos ejemplos:

Search

<input type=“search” name=“busqueda”>

Al ingresar texto en el campo, el navegador muestra una x  a la derecha para borrar todo lo que hemos escrito.


Si queremos habilitar la Búsqueda por voz simplemente debemos agregar en el input lo siguiente:

x-webkit-speech, quedando de la siguiente manera: <input type=”search” x-webkit-speech> 
Esto mostrará SOLO en Chrome algo así:

Tel

<input type=”tel” name=”telefono”>

A la hora de completar un input del tipo “tel” un Smartphone como iPhone convierte su teclado en números de teléfono.



Url

<input type=“url” name=“url”>

Al utilizarlo en un formulario el campo sólo aceptará direcciones de tipo URL. Es importante destacar que se debe escribir la URL completa (ej.: http://www.virtualtec.cl) de lo contrario saldrá un mensaje solicitando una dirección válida. Todo esto sucede sólo si el navegador soporta este “type”.

En el caso de iPhone el teclado pasa a ser “qwerty” pero en modo “url”  y ofrece teclas fundamentales para escribir una dirección web como son el punto (.), barra diagonal (/) y la tecla “.com”.


Email

<input type=“email” name=“correo”>

Al crear un campo de tipo “email”  el navegador validará de forma automática la dirección ingresada. Este ejemplo está realizado en Chrome. Fantástico ¿Verdad?



Datetime

<input type=“datetime” name=“fechahora”>

Esto sólo es posible en los navegadores Opera en su última versión. Al hacer clic en el campo se desplegará un calendario completo que el navegador ofrece de forma nativa.

Date

<input type=“date” name=“fecha”>

Si nos encontramos en el navegador Opera el calendario será el mismo que el anterior.

 

Week

<input type=“week” name=“semana”>

El calendario que nos mostrará Opera nos permitirá elegir el número de semana del año.

Time

<input type=“time” name=“hora”>

En este caso el input está con el formato de hora con los dos puntos (:) correspondientes y sus respectivas flechas para subir o bajar.

Number

<input type=“number” name=“numero” min=”0” max=”12”>

En este input tenemos los atributos “min” y “max” para establecer el mínimo y el máximo que aceptará el rango. Además aparecen flechas para subir y bajar. Este ejemplo está realizado en el navegador Chrome.

En un Smartphone como iPhone veremos el teclado numérico.


Range

<input type=“range” name=“rango” min=”0” max=”69”>

Este tipo de input se presenta con un control para deslizar con el mouse o con un dedo en el caso que lo estemos visualizando en un móvil con pantalla touch o Tablet. Este input, como “number”, acepta los atributos “min” y “max”.


Color

<input type=“color” name=“color”>

Si estás viendo este campo con la última versión de Chrome u Opera te vas a sorprender, porque el navegador presenta de forma nativa un selector de color… otra funcionalidad que comúnmente tendríamos que utilizar  JavaScript (Safari, Firefox).


Pero algo que sorprende aún más es que al hacer clic  en “otros…” de la imagen anterior, Opera muestra una ventana con un selector de color mucho más avanzado como lo hace Chrome de forma nativa:


DEMOSTRACIÓN

En Visual Studio vamos a dar click en menú File à New à Project


En la Ventana emergente le damos click a Web y espacio Name colocamos el nombre del proyecto que para el Ejemplo es “Demo 4 20480” y luego presionamos el botón OK



Le damos click a OK y Nos aparecerá la siguiente ventana donde Seleccionamos Emty y tildamos la opción de WebForm:





Al dar click en OK, En el espacio de nombre del proyecto damos click derecho y seleccionamos Add à New Items







En la siguiente ventana seleccionamos la Opción “Pagina HTML” y colocamos como nombre del archivo “Login.html”, para luego presionar el botón Add.















En el panel de proyectos vamos a crear una carpeta llamada Scripts y agregamos el archivo que contiene las bibliotecas de JavaScript, de la misma forma que el ejemplo anterior crearemos una carpeta para guardar los archivos de tipo CSS, la cual denominaremos LoginStyles.



En el archivo LoginStyles.css, colocaremos las siguientes Líneas de Código:


La pseudo-clase :valid CSS representa cualquier elemento de tipo <input> o <form> que cumpla con los ajustes de validación  especificados para dicho elemento. De esa forma podemos especificar un estilo y apariencia que confirme al usuario que los datos introducidos en el control de formulario son correctos.

Una clase es una definición de un estilo que en principio no está asociado a alguna etiqueta HTML, pero que podemos asociar a etiquetas concretas, para este ejemplo vamos utilizat las clases .validatedFine y .validationError.

En nuestro panel de proyectos vamos a dar doble click a la página de Login.html



En el elemento Head vamos a colocar el siguiente código:


Adentro del elemento Body Vamos a generar las etiquetas correspondientes a un Formulario:


Donde estará un campo que tendrá un contenido que indique el primer y segundo nombre a colocar en él y el cual será requerido.

Posteriormente pasaremos a crear un campo de tipo Password.


Se procederá a crear otro campo numérico donde los valores estarán comprendidos entre 0 y 100

Después a crear un campo donde especificamos que solo contendrán 2 valores numéricos del 0 al 9 y 3 letras de la A a la Z.


Para luego realizar el siguiente campo


Y terminamos colocando un comboBox con sus correspondientes opciones y una etiqueta tipo input que devuelve una función denominada validateForm() en el atributo on click:


Luego de haber terminado de generar nuestro formulario por código HTML, pasaremos a crear un código JavaScript que se encargue de llamar a las clases que están en nuestro archivo CSS.



Y al desplegar nuestra página web:



Se nos muestra de la siguiente forma:


















Tal vez te interesen estas entradas

No hay comentarios