HTMLpointHTMLpoint HTMLpoint.com


 Gestionar los formularios con DHTML 1/3  

 por Massimiliano Valente

En la economía general de un sitio web, la presencia de formularios HTML es, además de una costumbre, un elemento de importancia clave para establecer una relación directa con los usuarios. Introducidos en la versión 2.0 de HTML, los formularios han sido, hasta la llegada del HTML dinámico, los únicos elementos realmente interactivos de las páginas web. La creación de un formulario se articula en dos fases distantes: la inserción de las marcas HTML en el documento y la impostación de un script CGI en el servidor para gestionar los contenidos del módulo enviado. Esta última operación no es obligatoria, en el sentido de que un formulario puede enviarse también directamente, sin la intervención de un CGI, mediante la inserción de una simple cadena de código:

<form action="mailto:webmaster@html.it" method="post">

El mayor inconveniente de esta elección reside en la falta de formatación del contenido del formulario, aspecto en el que, sin embargo, CGI es muy eficaz. Cuando se envía un formulario al servidor, el valor de cada uno de los controles correspondientes está incluido en una cadena individual. Dicha cadena está compuesta por varias parejas de valores nombre-valor y está delineada por "&" comerciales. A la misma se asignan los valores de los elementos denominados, en una especie de concatenación.

He aquí el confuso resultado de un formulario en el cual, sin pasar por un CGI, se han introducido algunos datos personales:

Nombre=Massimiliano+Valente&E-mail=webmaster@html.it&ciudad%27=Roma&edad%25

Mientras un CGI habría dado el siguiente resultado:

(Nombre) Massimiliano Valente
(Email) valente@tecnet.it
(Ciudad) Roma
(Edad) 25


HTML dinámico permite gestionar al convalidación y formatación directa de los datos del lado cliente utilizando el modelo de objetos y actuando sobre los controles intrínsecos.

El ejemplo principal considerado en esteas páginas es conceptualmente simple y compatible con las versiones de última generación de Netscape e Internet Explorer.

El módulo del ejemplo simula un libro de visitas normalísimo y se compone de 6 voces. A cada una de ellas corresponde un layer que, según lo que se elija, queda escondido o expuesto a la vista del navegador. Conviene precisar que todos los layer se cargan al abrir la página por lo que la comunicación entre servidor y cliente se limita a dicha operación.

Muestra el ejemplo práctico


El código contenido en la primera línea se refiere al CGI hacia el que se dirigen los datos del formulario, tras pulsar el botón "Submit", y que se encarga de volverlos a remitir a una dirección previamente impostada.

El campo name="subject" indica el asunto (subject) del mensaje que contendrá los datos del formulario, mientras que el campo "next-url" indica la página que se carga tras rellenar el formulario. Dicha página se debe crear e insertar en el sitio y, a menudo, se limita a advertir que los datos se han enviado correctamente.

El código que sigue a la impostación de los formularios, comprendido entre las marcas "INPUT", indica los nombres de las seis voces que componen el módulo: nombre, portada, valoración, comunicaciones, mejoras y comentarios.

El modelo de HTML dinámico adoptado por Netscape no prvé que los layer y los formularios puedan trabajar conjuntamente. Y esto porque Netscape considera los layer ccomo documentos independientes uno de otro, lo que impide a los formularios gestionar el input. Dicho de otro modo, Netscape no crea las correlaciones necesarias para que al pulsar el botón "Submit" la información de los distintos layer sea recopilada y enviada.


  Vuelve a principio de página