{"id":246,"date":"2024-05-21T10:05:45","date_gmt":"2024-05-21T08:05:45","guid":{"rendered":"https:\/\/blog.sutilweb.eu\/?page_id=246"},"modified":"2024-05-21T10:05:45","modified_gmt":"2024-05-21T08:05:45","slug":"53-formularios-html","status":"publish","type":"page","link":"https:\/\/sutilweb.eu\/index.php\/lenguajes\/html5\/html5-manual\/53-formularios-html\/","title":{"rendered":"53. Formularios HTML"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Se utiliza un formulario HTML para recopilar la entrada del usuario. La entrada del usuario se env\u00eda con mayor frecuencia a un servidor para su procesamiento.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">El elemento &lt;form&gt;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">El elemento HTML <strong><em>&lt;form&gt;<\/em><\/strong> se usa para crear un formulario HTML para la entrada del usuario:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n.\n<em>form elements<\/em>\n.\n&lt;\/form&gt;<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">El elemento <strong><em>&lt;form&gt;<\/em><\/strong> es un contenedor para diferentes tipos de elementos de entrada, como: <strong>campos de texto<\/strong>, <strong>casillas de verificaci\u00f3n<\/strong>, <strong>botones de radio<\/strong>, <strong>botones de env\u00edo<\/strong>, etc.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">El elemento &lt;input&gt;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">El elemento HTML <strong><em>&lt;input&gt;<\/em><\/strong> es el elemento de formulario m\u00e1s utilizado.&nbsp;Un elemento <strong><em>&lt;input&gt;<\/em><\/strong> se puede mostrar de muchas formas, seg\u00fan el atributo de tipo. Aqu\u00ed hay unos ejemplos:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><th>Tipo<\/th><th>Descripci\u00f3n<\/th><\/tr><tr><td>&lt;input type=\u00bbtext\u00bb&gt;<\/td><td>Muestra un campo de entrada de texto de una sola l\u00ednea<\/td><\/tr><tr><td>&lt;input type=\u00bbradio\u00bb&gt;<\/td><td>Muestra un bot\u00f3n de radio (para seleccionar una de muchas opciones)<\/td><\/tr><tr><td>&lt;input type=\u00bbcheckbox\u00bb&gt;<\/td><td>Muestra una casilla de verificaci\u00f3n (para seleccionar cero o m\u00e1s de muchas opciones)<\/td><\/tr><tr><td>&lt;input type=\u00bbsubmit\u00bb&gt;<\/td><td>Muestra un bot\u00f3n de env\u00edo (para enviar el formulario)<\/td><\/tr><tr><td>&lt;input type=\u00bbbutton\u00bb&gt;<\/td><td>Muestra un bot\u00f3n en el que se puede hacer clic<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Casillas de texto<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>&lt;input type=\u00bbtext\u00bb&gt;<\/em><\/strong> define un campo de entrada de una sola l\u00ednea para la entrada de texto.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"fname\"&gt;First name:&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"text\"&nbsp;id=\"fname\"&nbsp;name=\"fname\"&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"lname\"&gt;Last name:&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"text\"&nbsp;id=\"lname\"&nbsp;name=\"lname\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\">Nota: El formulario en s\u00ed no es visible. Tambi\u00e9n ten en cuenta que el ancho predeterminado de un campo de entrada es de 20 caracteres.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">El elemento &lt;label&gt;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Observa el uso del elemento <strong><em>&lt;label&gt;<\/em><\/strong> en el ejemplo anterior. La etiqueta <strong><em>&lt;label&gt;<\/em><\/strong> define una etiqueta para muchos elementos de formulario. El elemento <strong><em>&lt;label&gt;<\/em><\/strong> es \u00fatil para los usuarios de lectores de pantalla, porque el lector de pantalla leer\u00e1 en voz alta la etiqueta cuando el usuario se concentre en el elemento de entrada. El elemento <strong><em>&lt;label&gt;<\/em><\/strong> tambi\u00e9n ayuda a los usuarios que tienen dificultades para hacer clic en regiones muy peque\u00f1as (como <strong>botones de radio<\/strong> o <strong>casillas de verificaci\u00f3n<\/strong>), porque cuando el usuario hace clic en el texto dentro del elemento <strong><em>&lt;label&gt;<\/em><\/strong>, alterna el bot\u00f3n de radio\/casilla de verificaci\u00f3n. El atributo <strong><em>for<\/em> <\/strong>de la etiqueta <strong><em>&lt;label&gt;<\/em><\/strong> debe ser igual al atributo <strong><em>id<\/em> <\/strong>del elemento <strong><em>&lt;input&gt;<\/em><\/strong> para unirlos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Botones de radio<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">El <strong><em>&lt;input type=\u00bbradio\u00bb&gt;<\/em><\/strong> define un <strong>bot\u00f3n de opci\u00f3n<\/strong>. Los <strong>botones de opci\u00f3n<\/strong> permiten al usuario seleccionar UNA de un n\u00famero limitado de opciones.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;p&gt;Choose your favorite Web language:&lt;\/p&gt;\n\n&lt;form&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"radio\"&nbsp;id=\"html\"&nbsp;name=\"fav_language\"&nbsp;value=\"HTML\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"html\"&gt;HTML&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"radio\"&nbsp;id=\"css\"&nbsp;name=\"fav_language\"&nbsp;value=\"CSS\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"css\"&gt;CSS&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"radio\"&nbsp;id=\"javascript\"&nbsp;name=\"fav_language\"&nbsp;value=\"JavaScript\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"javascript\"&gt;JavaScript&lt;\/label&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Casillas de verificaci\u00f3n<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>&lt;input type=\u00bbcheckbox\u00bb&gt;<\/em><\/strong> define una <strong>casilla de verificaci\u00f3n<\/strong>. Las <strong>casillas de verificaci\u00f3n<\/strong> permiten al usuario seleccionar CERO o M\u00c1S opciones de un n\u00famero limitado de opciones.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"checkbox\"&nbsp;id=\"vehicle1\"&nbsp;name=\"vehicle1\"&nbsp;value=\"Bike\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"vehicle1\"&gt;&nbsp;I have a bike&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"checkbox\"&nbsp;id=\"vehicle2\"&nbsp;name=\"vehicle2\"&nbsp;value=\"Car\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"vehicle2\"&gt;&nbsp;I have a car&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"checkbox\"&nbsp;id=\"vehicle3\"&nbsp;name=\"vehicle3\"&nbsp;value=\"Boat\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"vehicle3\"&gt;&nbsp;I have a boat&lt;\/label&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">El bot\u00f3n submit<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>&lt;input type=\u00bbsubmit\u00bb&gt;<\/em><\/strong> define un bot\u00f3n para enviar los datos del formulario a un controlador de formulario. El controlador de formulario suele ser un archivo en el servidor con un script para procesar los datos de entrada. El controlador de formulario se especifica en el atributo de acci\u00f3n del formulario.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&nbsp;action=\"\/action_page.php\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"fname\"&gt;First name:&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"text\"&nbsp;id=\"fname\"&nbsp;name=\"fname\"&nbsp;value=\"John\"&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"lname\"&gt;Last name:&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"text\"&nbsp;id=\"lname\"&nbsp;name=\"lname\"&nbsp;value=\"Doe\"&gt;&lt;br&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"submit\"&nbsp;value=\"Submit\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">El nombre de atributo para &lt;input&gt;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ten en cuenta que cada campo de entrada debe tener un atributo de nombre para enviarse. Si se omite el atributo de nombre, el valor del campo de entrada no se enviar\u00e1 en absoluto.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ejm<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&nbsp;action=\"\/action_page.php\"&gt;\n&nbsp;&nbsp;&lt;label&nbsp;for=\"fname\"&gt;First name:&lt;\/label&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"text\"&nbsp;id=\"fname\"&nbsp;value=\"John\"&gt;&lt;br&gt;&lt;br&gt;\n&nbsp;&nbsp;&lt;input&nbsp;type=\"submit\"&nbsp;value=\"Submit\"&gt;\n&lt;\/form&gt;<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Se utiliza un formulario HTML para recopilar la entrada del usuario. La entrada del usuario se env\u00eda con mayor frecuencia a un&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":41,"menu_order":52,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","footnotes":""},"class_list":["post-246","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Sutil Web","author_link":"https:\/\/sutilweb.eu\/index.php\/author\/sutilweb\/"},"uagb_comment_info":0,"uagb_excerpt":"Se utiliza un formulario HTML para recopilar la entrada del usuario. La entrada del usuario se env\u00eda con mayor frecuencia a un...","_links":{"self":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/246","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/comments?post=246"}],"version-history":[{"count":2,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/246\/revisions"}],"predecessor-version":[{"id":248,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/246\/revisions\/248"}],"up":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/41"}],"wp:attachment":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/media?parent=246"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}