Introducción
En este laboratorio, los estudiantes aprenderán cómo crear elementos de formulario HTML completos utilizando varios tipos de entrada. El laboratorio ofrece un enfoque estructurado para comprender los atributos de la etiqueta de formulario, implementar diferentes elementos de entrada y explorar técnicas de diseño de formularios. Los participantes adquirirán experiencia práctica con entradas de texto, botones de radio, casillas de verificación, carga de archivos y botones de envío, desarrollando habilidades esenciales de desarrollo web para crear formularios web interactivos y amigables con el usuario.
El laboratorio cubre conceptos clave como la configuración de la etiqueta de formulario, las variaciones de tipo de entrada y las estrategias de implementación prácticas. Al trabajar a través de ejercicios paso a paso, los aprendices entenderán cómo estructurar formularios, definir atributos de entrada y crear elementos de interacción de usuario dinámicos que son cruciales para recopilar y procesar datos de usuario en aplicaciones web.
Comprender la etiqueta de formulario y sus atributos básicos
En este paso, aprenderás sobre las etiquetas de formulario HTML y sus atributos básicos. Los formularios son esenciales para recopilar la entrada del usuario en las páginas web, lo que permite la interacción entre los usuarios y los sitios web.
Comencemos creando un formulario HTML básico en el WebIDE. Abre un nuevo archivo en el directorio ~/project y llámalo form_basics.html.
touch ~/project/form_basics.html
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>HTML Form Basics</title>
</head>
<body>
<form action="/submit" method="post">
<!-- Form elements will be added here -->
</form>
</body>
</html>
La etiqueta <form> tiene dos atributos clave:
action: Especifica a dónde se enviarán los datos del formulario cuando se envíemethod: Define cómo se envían los datos (por lo general, "get" o "post")
Desglosemos los atributos del formulario:
action="/submit": Por lo general, este sería un punto final del lado del servidor que procesa los datos del formulariomethod="post": Envía los datos del formulario en el cuerpo de la solicitud, es más seguro para información sensible
Ejemplo de salida de una estructura de formulario básica:
<form action="/submit" method="post">
<!-- Form will look like this when rendered -->
</form>
Los atributos comunes de los formularios incluyen:
name: Identifica el formularioid: Identificador único para el formulariotarget: Especifica dónde mostrar la respuestaenctype: Especifica cómo se deben codificar los datos del formulario
Si renderizas el formulario en un navegador, aún no mostrará ningún contenido visible. La estructura del formulario es la base para agregar elementos interactivos como entradas de texto, botones de radio y más.
Implementar elementos de entrada de texto
En este paso, aprenderás sobre diferentes tipos de elementos de entrada de texto en formularios HTML. Continuaremos trabajando con el archivo form_basics.html creado en el paso anterior.
Las entradas de texto son elementos fundamentales de los formularios que permiten a los usuarios ingresar varios tipos de información basada en texto. Exploremos diferentes tipos de entrada:
Abre tu archivo ~/project/form_basics.html y actualiza el formulario con varios elementos de entrada de texto:
<form action="/submit" method="post">
<!-- Single-line text input -->
<label for="username">Username:</label>
<input
type="text"
id="username"
name="username"
placeholder="Enter your username"
/>
<!-- Email input -->
<label for="email">Email:</label>
<input type="email" id="email" name="email" placeholder="Enter your email" />
<!-- Password input -->
<label for="password">Password:</label>
<input
type="password"
id="password"
name="password"
placeholder="Enter your password"
/>
<!-- Number input -->
<label for="age">Age:</label>
<input type="number" id="age" name="age" min="0" max="120" />
<!-- Multiline text input -->
<label for="comments">Comments:</label>
<textarea
id="comments"
name="comments"
rows="4"
cols="50"
placeholder="Enter your comments"
></textarea>
</form>
Atributos clave para las entradas de texto:
type: Define el tipo de entrada (texto, correo electrónico, contraseña, número)id: Identificador único para la entradaname: Nombre utilizado al enviar los datos del formularioplaceholder: Texto de sugerencia que se muestra antes de la entrada del usuariominymax: Límites para las entradas numéricasrowsycols: Dimensiones para el área de texto (textarea)
Ejemplo de salida cuando se renderiza en un navegador:
Notas: Aprende más sobre Cómo previsualizar archivos HTML en el WebIDE.

Crear elementos de selección de botones de radio y casillas de verificación
En este paso, aprenderás cómo crear botones de radio y casillas de verificación en formularios HTML. Estos tipos de entrada son cruciales para permitir a los usuarios hacer selecciones de opciones predefinidas.
Abre tu archivo ~/project/form_basics.html y agrega los siguientes elementos de botones de radio y casillas de verificación:
<form action="/submit" method="post">
<!-- Radio Button Group -->
<fieldset>
<legend>Select Your Favorite Programming Language:</legend>
<input type="radio" id="python" name="language" value="python" />
<label for="python">Python</label>
<input type="radio" id="javascript" name="language" value="javascript" />
<label for="javascript">JavaScript</label>
<input type="radio" id="java" name="language" value="java" />
<label for="java">Java</label>
</fieldset>
<!-- Checkbox Group -->
<fieldset>
<legend>Select Your Skills:</legend>
<input type="checkbox" id="html" name="skills" value="html" />
<label for="html">HTML</label>
<input type="checkbox" id="css" name="skills" value="css" />
<label for="css">CSS</label>
<input type="checkbox" id="javascript" name="skills" value="javascript" />
<label for="javascript">JavaScript</label>
</fieldset>
</form>
Puntos clave sobre botones de radio y casillas de verificación:
- Los botones de radio (
type="radio") permiten solo una selección en un grupo - Las casillas de verificación (
type="checkbox") permiten múltiples selecciones - El atributo
nameagrupa entradas relacionadas - El atributo
valuedefine el valor enviado - Las etiquetas
<fieldset>y<legend>ayudan a organizar y etiquetar grupos de entrada
Ejemplo de salida cuando se renderiza en un navegador:

Agregar botones de carga de archivos y envío
En este paso, aprenderás cómo agregar entradas de carga de archivos y botones de envío a tu formulario HTML. Estos elementos son esenciales para permitir a los usuarios cargar archivos y enviar datos del formulario.
Abre tu archivo ~/project/form_basics.html y agrega los siguientes elementos:
<form action="/submit" method="post" enctype="multipart/form-data">
<!-- Previous form elements from previous steps -->
<!-- File Upload Input -->
<fieldset>
<legend>Upload Your Profile Picture:</legend>
<input type="file" id="profile-pic" name="profile-pic" accept="image/*" />
</fieldset>
<!-- Submit and Reset Buttons -->
<div>
<input type="submit" value="Submit Form" />
<input type="reset" value="Clear Form" />
</div>
</form>
Puntos clave sobre la carga de archivos y los botones de envío:
type="file"crea una entrada de carga de archivosaccept="image/*"limita la selección de archivos a imágenesenctype="multipart/form-data"es necesario para la carga de archivostype="submit"crea un botón para enviar los datos del formulariotype="reset"borra todas las entradas del formulario
Ejemplo de salida cuando se renderiza en un navegador:

Atributos importantes:
accept: Especifica los tipos de archivos permitidosvalue: Establece el texto en los botonesname: Identifica la entrada cuando se envía
Practicar combinaciones de elementos de formulario
En este último paso, crearás un formulario de registro completo que combine todos los elementos de formulario HTML que has aprendido. Diseñaremos un formulario de registro de usuario que demuestre la aplicación práctica de varios tipos de entrada.
Crea un nuevo archivo ~/project/registration_form.html con el siguiente contenido:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>User Registration Form</title>
</head>
<body>
<form action="/register" method="post" enctype="multipart/form-data">
<h2>User Registration</h2>
<!-- Personal Information -->
<fieldset>
<legend>Personal Details</legend>
<label for="fullname">Full Name:</label>
<input type="text" id="fullname" name="fullname" required />
<label for="email">Email:</label>
<input type="email" id="email" name="email" required />
<label for="age">Age:</label>
<input type="number" id="age" name="age" min="18" max="100" />
</fieldset>
<!-- Account Preferences -->
<fieldset>
<legend>Account Preferences</legend>
<label>Preferred Programming Language:</label>
<input type="radio" id="python" name="language" value="python" />
<label for="python">Python</label>
<input
type="radio"
id="javascript"
name="language"
value="javascript"
/>
<label for="javascript">JavaScript</label>
<label>Skills:</label>
<input type="checkbox" id="web" name="skills" value="web" />
<label for="web">Web Development</label>
<input type="checkbox" id="data" name="skills" value="data" />
<label for="data">Data Science</label>
</fieldset>
<!-- Profile Picture -->
<fieldset>
<legend>Profile Picture</legend>
<input type="file" id="profile" name="profile" accept="image/*" />
</fieldset>
<!-- Additional Comments -->
<fieldset>
<legend>Additional Information</legend>
<label for="comments">Comments:</label>
<textarea id="comments" name="comments" rows="4" cols="50"></textarea>
</fieldset>
<!-- Form Submission -->
<div>
<input type="submit" value="Register" />
<input type="reset" value="Clear Form" />
</div>
</form>
</body>
</html>
Características clave de este formulario combinado:
- Varios tipos de entrada (texto, correo electrónico, número, botones de radio, casillas de verificación)
- Carga de archivos
- Área de texto (
textarea) para comentarios adicionales - Botones de envío y restablecimiento
- Grupos de campos (
fieldset) para organizar secciones del formulario - Campos obligatorios y opcionales
Ejemplo de salida cuando se renderiza en un navegador:

Resumen
En este laboratorio, los participantes aprendieron los fundamentos de la creación de formularios HTML explorando elementos y atributos esenciales de los formularios. El laboratorio guió a los estudiantes en la comprensión de las estructuras de las etiquetas de formulario, con un enfoque en atributos clave como action y method, que definen cómo se procesan y transmiten los datos del formulario. Los participantes practicaron la creación de diseños básicos de formularios y la implementación de varios tipos de entrada, incluyendo entradas de texto, botones de radio, casillas de verificación y elementos de carga de archivos.
El enfoque práctico permitió a los aprendices desarrollar habilidades prácticas en el diseño de formularios web interactivos, cubriendo aspectos críticos como la configuración de elementos de entrada, métodos de envío de formularios y diseño de interacción con el usuario. Al construir progresivamente componentes de formularios, los estudiantes obtuvieron conocimientos sobre cómo estructurar interfaces web funcionales y amigables para el usuario utilizando técnicas estándar de formularios HTML.



