Domina el input type submit en HTML: mejores prácticas y trucos

| Última modificación: 31 de mayo de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

El elemento <input type="submit"> es una pieza fundamental en la creación de formularios en HTML. A pesar de su aparente simplicidad, ofrece una variedad de funcionalidades y personalizaciones que pueden mejorar la experiencia del usuario y la eficacia de tus formularios web. En este artículo, exploraremos en detalle cómo usar el input type submit, sus mejores prácticas y algunos trucos útiles.

¿Qué es el input type submit?

El input type submit se utiliza para crear un botón que, cuando se hace clic en él, envía los datos del formulario al servidor. Este elemento es esencial para cualquier formulario en HTML, permitiendo a los usuarios enviar la información ingresada.

Sintaxis básica

La sintaxis básica para crear un botón de envío es la siguiente:

<form>
  <input type="submit" value="Enviar">
</form>

Si no especificas el atributo value, el botón tendrá una etiqueta predeterminada como “Submit” o “Enviar”.

Atributos adicionales del input type submit

El input type submit admite varios atributos que puedes utilizar para personalizar su comportamiento y apariencia.

Formaction

El atributo formaction permite especificar una URL diferente a la que se define en el atributo action del formulario. Esto es útil cuando tienes múltiples botones de envío en el mismo formulario y cada uno necesita enviar los datos a una URL diferente.

<form action="/default-url">
  <input type="submit" value="Enviar por defecto">
  <input type="submit" value="Enviar a otra URL" formaction="/otra-url">
</form>

Formenctype

El atributo formenctype define el método de codificación utilizado al enviar los datos del formulario. Los valores permitidos son application/x-www-form-urlencoded, multipart/form-data y text/plain.

<form>
  <input type="submit" value="Enviar con codificación multipart" formenctype="multipart/form-data">
</form>

Formmethod

El atributo formmethod especifica el método HTTP utilizado al enviar el formulario (get, post, o dialog).

<form>
  <input type="submit" value="Enviar con POST" formmethod="post">
  <input type="submit" value="Enviar con GET" formmethod="get">
</form>

Formnovalidate

El atributo formnovalidate desactiva la validación de formulario al enviar los datos.

<form>
  <input type="submit" value="Enviar sin validar" formnovalidate>
</form>

Formtarget

El atributo formtarget especifica dónde se muestra la respuesta recibida después de enviar el formulario. Los valores comunes son _self, _blank, _parent y _top.

<form>
  <input type="submit" value="Abrir en nueva pestaña" formtarget="_blank">
</form>

Mejores prácticas para el input type submit

Accesibilidad

Asegúrate de que los botones de envío sean accesibles para todos los usuarios, incluyendo aquellos que usan tecnologías de asistencia. Usa etiquetas claras y descriptivas.

<input type="submit" value="Enviar formulario">

Estilización

Puedes usar CSS para estilizar el input type submit y hacer que se ajuste al diseño de tu sitio web.

input[type="submit"] {
  background-color: #4CAF50;
  color: white;
  padding: 10px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

Desactivación y habilitación

Puedes desactivar temporalmente el botón de envío para evitar múltiples envíos.

<input type="submit" value="Enviar" id="submitButton" disabled>
<script>
  document.getElementById('submitButton').disabled = false;
</script>

Atajos de teclado

Añadir atajos de teclado puede mejorar la accesibilidad y usabilidad de tu formulario.

<input type="submit" value="Enviar" accesskey="s" title="Presiona Alt+S para enviar">

Trucos avanzados con input type submit

Envío condicional

Puedes usar JavaScript para controlar cuándo y cómo se envía el formulario.

<form onsubmit="return validarFormulario()">
  <input type="text" id="campoTexto">
  <input type="submit" value="Enviar">
</form>
<script>
  function validarFormulario() {
    var campo = document.getElementById('campoTexto').value;
    if(campo === '') {
      alert('El campo de texto no puede estar vacío');
      return false;
    }
    return true;
  }
</script>

Personalización de la apariencia

Si necesitas un botón de envío altamente personalizado, puedes usar CSS y HTML para diseñar tu propio botón.

<form>
  <button type="submit" class="custom-submit">Enviar</button>
</form>
<style>
  .custom-submit {
    background-color: #008CBA;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
  }
</style>

Dominar el uso del input type submit en HTML es crucial para crear formularios funcionales y accesibles. Con las mejores prácticas y trucos que hemos cubierto, puedes asegurarte de que tus formularios no solo sean eficientes, sino también amigables para el usuario.

Si quieres profundizar en tus conocimientos de desarrollo web y aprender a crear formularios avanzados y mucho más, ¡únete al Bootcamp en desarrollo web de KeepCoding! Nuestro programa te preparará para una carrera exitosa en el sector tecnológico, donde la demanda de profesionales es alta y las oportunidades laborales son excelentes. Al finalizar el Bootcamp, estarás listo para enfrentar los desafíos del desarrollo web y transformar tu vida profesional. ¡No esperes más y da el primer paso hacia tu futuro en tecnología!

Alberto Casero

Alberto Casero es CTO en Watium, Fundador de Kas Factory & Coordinador del Bootcamp en Desarrollo Web.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Desarrollo Web

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado