Hace unos días me preguntaba ¿por que se usaba <input />
en lugar de <button />
? y desde entonces he recibido algunos motivos, entre ellos, y como era de esperar, Internet Explorer da problemas ya que submita todos los submits del formulario.
He montado un mini ejemplo de este problema (para IE), en él podemos ver un par de ejemplos con dos formularios, uno de buttons y otro de inputs.
Ejemplos
Si probamos con el formulario de inputs, veremos que no se submita nada más que el input pulsado, además de text
. Osea, un formuario de toda la vida.
En el primer ejemplo vemos el formulario de botones y vemos, en Internet Explorer, que cuando submitamos con el <button />
que queramos, enviamos todos los otros <button />
. Por lo tanto tendremos que tenerlo en cuenta para usarlo correctamente.
Esto puede suponer un problema serio a la hora de, por ejemplo, insertar, borrar o modificar un registro dentro de un mismo formulario, ya que nos submitaría todos los <button />
pulsemos el elemento que pulsemos… Controlar esto desde el lado del servidor es imposible, ya que todos los submit serán válidos.
¿como solucionar esto? ¿Usando <input />
o seleccionar mediante radiobutton
la acción a ejecutar usando button (con todo lo que esto conlleva).?
6 comentarios, 1 referencias
+
#