Artículos
HTML5

Asociar un botón a cualquier formulario con HTML5

22/May/2022

Quizás uno de los nuevos atributos de HTML5 que nos haya pasado por alto, aunque es de gran utilidad, es el atributo form del elemento button. Esto nos va a permitir asociar un botón a cualquier formulario con HTML5. Es decir, independientemente de dónde tengamos el formulario y dónde tengamos el botón dentro de la estructura de nuestra página, podremos asociarlos para que funcionen de manera conjunta.

Y es que hasta la especificación de HTML5 los botones quedaban asociados al formulario padre en el que se encontrasen ubicados. Complicando bastante la forma en la que diseñábamos los formularios y disponíamos los botones, llevándonos a realizar diseños peculiares. Además, a esto se sumaba la imposibilidad de anidar formularios que nos habría ayudado a colocar los elementos.

Para explicarlo lo primero que necesitamos es un formulario. Crearemos un simple formulario con el elemento form que contenga una descripción o etiqueta mediante el elemento label y un campo de entrada definido con un elemento input.

<form id="miformualario" method="post" action="send" novalidate>
    <label for="nombre">Nombre: </label>
    <input type="text" name="nombre" id="nombre" required/>        
</form>

Como podemos ver el formulario se envía vía POST a un servicio que hemos llamado «send». Si queremos enviar el formulario tendremos que añadir un botón, ya sea un botón del elemento button o un input de tipo «button». Este botón se añade dentro del elemento del formulario, es decir, dentro del form.

<form id="miformualario" method="post" action="send" novalidate>
    <label for="nombre">Nombre: </label>
    <input type="text" name="nombre" id="nombre" required/>        
    <button>Enviar</button>
</form>

Pero ahora ya podemos asociar un botón a cualquier formulario con HTML5. Para ello tenemos que saber que el elemento button tiene un atributo que se llama form. Este atributo puede contener el ID de cualquier formulario de nuestra página, es decir, del valor que hayamos asociado al atributo id del formulario.

En nuestro ejemplo el formulario que creamos tenía un atributo id al cual dimos un valor de «miformulario». Es por ello que podremos crear el botón en cualquier parte de nuestra página de la siguiente forma:

<button id="miboton" form="miformualario">Enviar</button>

Pero el atributo form no es el único que nos da capacidades de asociar un botón a cualquier formulario con HTML5, sino que encontramos otros atributos como formaction o formmethod que nos permiten cambiar el destino del formulario y la forma de envío desde el propio botón. Es decir, podríamos indicar ahora que la petición es de tipo GET y que se envía a un servicio que denomimaremos «enviar.php». Una potencia enorme a la hora de crear botones asociados a formularios.

En este caso el código quedaría de la siguiente forma:

<button id="miboton" form="miformualario" formaction="enviar.php" formmethod="get">Enviar</button>

Espero que hayas aprendido como asociar un botón a cualquier formulario con HTML5 mediante el atributo form y otras capacidades extra que nos ofrecen los atributos formaction o formmethod.

Código Fuente

Descárgate el código fuente de Asociar un botón a cualquier formulario con HTML5
Y si te ha gustado nuestro código fuente puedes regalarnos una estrella Star

Vídeos sobre HTML5

Disfruta también de nuestros artículos sobre HTML5 en formato vídeo. Aprovecha y suscribete a nuestro canal.

Test HTML5

¿Te atreves a probar tus habilidades y conocimiento en HTML5 con nuestro test?

Test HTML5
Suscribir
Notificar de
guest
0 Comentarios
Opiniones integradas
Ver todos los comentarios