5 - Formularios

[editar]
Curso gratis creado por Rafael Menéndez-Barzanallana Asensio. Extraido de: http://www.um.es/docencia/barzana
30 de Noviembre de 1999
Una de las mayores ventajas de la web es que resulta interactiva. Los usuarios de una página no tienen más que escribir al autor de la misma para comentarle cualquier cosa de la misma. Sin embargo, si deseamos que nos digan sólo unas cosas concretas (responder a alguna pregunta, seleccionar entre varias opciones, etc..) deberemos utilizar formularios. Por ejemplo,
<FORM ACTION=" " METHOD=POST>
Nombre:<BR><INPUT NAME="nombre" TYPE=TEXT SIZE=32>
<BR>¿Cuántos son dos y dos?<BR>
<INPUT NAME="Respuesta" TYPE=RADIO VALUE="mal">3<BR>
<INPUT NAME="Respuesta" TYPE=RADIO VALUE="bien">4<BR>
<INPUT NAME="Respuesta" TYPE=RADIO VALUE="mal">5<BR>
<INPUT TYPE="Submit" VALUE="Comprobar">
</FORM>
se verá:

Nombre:



¿Cuantos son dos y dos?
3
4
5


Todos los elementos de un formulario deben estar encerrados entre <FORM>y </FORM>. Como parámetros cabe destacar tres. ACTION define el URL que deberá gestionar el formulario. Puede ser una dirección de correo (precedida del inevitable mailto:, en cuyo caso deberemos añadir el parámetro ENCTYPE="text/plain" para que lo que recibamos resulte legible.

Por otro lado, tenemos el parámetro METHOD define la manera en que se enviará el formulario. Es recomendable utilizar POST.
En el caso de que estemos mandando el formulario a nuestra dirección de correo electrónico es obligado usarlo. Ahora se va a tratar uno a uno todos los elementos que podemos incluir en un formulario. Veremos que todos ellos tienen algo en común. Como el resultado de cualquier formulario es una lista de variables y valores asignados a las mismas, todos ellos tendrán un atributo en común: el nombre de su variable. El parámetro también será común a todos: NAME.
Cajas de texto

Existen tres maneras de conseguir que el usuario introduzca texto en nuestro formulario. Las dos primeras se obtienen por medio de la etiqueta <INPUT>:

|| <INPUT TYPE=TEXT> || ||
|| <INPUT TYPE=PASSWORD> || ||





El primero nos dibujará una caja donde escribir un texto (de una sola línea). El segundo es equivalente, pero no veremos lo que tecleemos en l. Estos son los atributos para modificarlos:

|| Parámetro || Utilidad ||
|| SIZE || Tamaño de la caja de texto. ||
|| MAXLENGTH || Número máximo de caracteres que puede introducir. ||
|| VALUE || Texto por defecto que contendrá la caja. ||



Por otro lado, puede que necesitemos que el usuario pueda introducir más de una línea. En ese caso se utilizará la siguiente etiqueta:

|| <TEXTAREA><br/>Por defecto<br/></TEXTAREA> || Por defecto ||





Lo que incluyamos entre las dos etiquetas será lo que se muestre por defecto dentro de la caja. Admite estos parámetros:

|| Parámetro || Utilidad ||
|| ROWS || Filas que ocupará la caja de texto. ||
|| COLS || Columnas que ocupará la caja de texto. ||



Opciones
Si lo que deseamos es que el usuario decida entre varias opciones podremos hacerlo de dos formas. La primera es la que se vio en el ejemplo inicial:

|| 3<INPUT NAME="Respuesta" TYPE=RADIO VALUE="mal"><BR> 4<INPUT NAME="Respuesta" TYPE=RADIO VALUE="bien"><BR>5<INPUT NAME="Respuesta" TYPE=RADIO VALUE="mal"><BR> || 3
4
5 ||





Para asociar varios botones de radio a una misma variable les pondremos a todos ellos el mismo NAME. Aparte de esto acepta los siguientes parámetros:

|| Parámetro || Utilidad ||
|| VALUE || Este es el valor que asignará a la variable. ||
|| CHECKED || Si lo indicamos en una de las opciones esta será la que esté activada por defecto. ||





Pero también tenemos una posibilidad que ocupa bastante menos: las listas desplegables. Para emplearlas deberemos utilizar dos etiquetas, SELECTy OPTION:

|| <SELECT NAME="Navegador"> <OPTION>Mozilla <OPTION>Explorer <OPTION>Opera <OPTION>Lynx <OPTION>Otros</SELECT> || MozillaExplorerOperaLynxOtros ||





Los parámetros que admite SELECT son las siguientes:

|| Parámetro || Utilidad ||
|| SIZE || El número de opciones que podremos ver. Si es mayor que 1 veremos una lista de selección y, si no, veremos una lista desplegable. ||
|| MULTIPLE || Si lo indicamos podremos elegir más de una opción. ||





Y OPTION estos:

|| Parámetro || Utilidad ||
|| VALUE || Este es el valor que asignará a la variable. ||
|| SELECTED || Si lo indicamos en una de las opciones esta será la seleccionada por defecto. ||



Botones del formulario

Existen dos: uno que se utiliza para mandar el formulario y otro que sirve para limpiar todo lo que haya rellenado el usuario:

|| <INPUT TYPE=SUBMIT><BR><INPUT TYPE=RESET> ||
||





Podemos cambiar el texto que el navegador pone por defecto en esos botones utilizando el parámetro VALUE.
Otros elementos

Puede que necesitemos que el usuario sencillamente nos confirme o niegue algo. Se consigue por medio de controles de confirmación:

|| <INPUT NAME="Belleza" TYPE=CHECKBOX>Me considero guapo/a || Me considero guapo/a ||



Si queremos que el control está activado por defecto le añadiremos el parámetro CHECKED. El formulario asignará a la variable NAME el valor on u off.
Por último, existe la posibilidad de que necesitemos que, en el formulario, tengamos alguna variable con un valor previamente asignados.
Botones
Una de las cosas que más han mejorado son los botones. Ahora disponen de una etiqueta propia, de modo que se pueda encerrar con ella todo tipo de elementos HTML, como gráficos o, incluso, tablas enteras.
Como no podía ser de otra manera, la etiqueta en cuestión se llama BUTTON:

|| <BUTTON TYPE="button"> <table border="1"> <tr><BR/> <th>Soy una</th><BR/> <th>tabla</th> </tr> <tr> <td>que está</td> <td>en un botón</td> </tr> </table> </BUTTON> || || Soy una || tabla || || que está || en un botón || ||





Los parámetros de dicha etiqueta son los normales, TYPE, que podrán tomar los valores SUBMIT (por defecto), RESET y BUTTON,NAME y VALUE.


Por otro lado, ahora podemos declarar un gráfico como un elemento más de entrada. como un nuevo tipo dentro del elemento INPUT:

|| <INPUT TYPE="image" SRC="graficos/nav.gif" alt="Elije navegador"> || ||




Este elemento se comportará de mismo modo que un botón de tipo SUBMIT, pero añadirá como información en el formulario las coordenadas x e y donde el usuario lo pulsó.
Etiquetas
Hasta hora, el texto que acompañaba a los campos de entrada no estaba asociado a los mismos de ninguna manera. Así, por ejemplo, si pulsábamos en el texto que acompañaba a un control de confirmación, no sucedía nada. Ahora, en cambio, si utilizamos la etiqueta LABEL, el control cambiará de estado (sólo disponible a partir de Netscape 5):

|| <LABEL> <INPUT NAME="Belleza" TYPE=CHECKBOX> Me considero guapo/a</LABEL> || Me considero guapo/a ||


Lo bueno que tiene es que se puede usar sin peligro, ya que no afectar a los usuarios de navegadores antiguos.
Agrupación de elementos

Hasta ahora, no disponíamos de ninguna manera de agrupar visualmente varios controles, si no echábamos mano de elementos que no son del formulario, como tablas o imágenes.

Ahora, si encerramos una parte de un formulario dentro de la etiqueta FIELDSET se mostrará un rectángulo alrededor de los mismos. Si además, le indicamos un título por medio de la etiqueta LEGEND nuestros formularios quedarán hechos un verdadero primor:

|| <FIELDSET> <LEGEND>Mi hermoso formulario</LEGEND> <LABEL> Mi texto: <INPUT TYPE="text"> </LABEL></FIELDSET> || Mi hermoso formularioMi texto: ||


Desactivación de elementos

Todos los controles de un formulario se pueden desactivar, impidiendo así al usuario que los utilice. Se seguirán mostrando en pantalla, aunque con un aspecto distinto para indicar su triste estado. Para ello sólo tenemos que indicarle el parámetro DISABLED:

|| <LABEL DISABLED>Texto: <INPUT TYPE=TEXT DISABLED> </LABEL> || Texto: ||
[editar]

7 opiniones

ggggg

1111
hhh

hh
Se puede hacer un formulario dentro de otro?.

Tengo una duda sobre si se puede hacer un formulario dentro de otro?.
Curso excelente.

Muy buen material.
Programacion de paginas web.

El curso es bueno pues ofrece las pautas principales para tener en cuenta al diseñar una pagina web.
1 2 | siguiente >

Cursos gratis relacionados con 'Programación de páginas web (HTML y CSS)'

Práctico y ameno curso de HTML. El lenguaje HTML se basa en la sintaxis SGML,... Más »
Cuando hablamos de un sitio web nos estamos refiriendo en realidad a un conjunto de... Más »
El HTML no es más que una aplicación del SGML (Standard Generalized Markup Language), un... Más »
Una web es mucho más que abrir el block de notas y ponerse a tirar... Más »
Completo curso acerca de los virus informáticos, historia, clasificación, protección...

Autor y licencia de 'Programación de páginas web (HTML y CSS)'


Curso gratis de Rafael Menéndez-Barzanallana Asensio. Extraido de: http://www.um.es/docencia/barzana CopyLeft
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.