javascript - vacios - validar formulario jquery antes de enviar
Deshabilitar formulario enviar automáticamente al hacer clic en el botón (4)
Botones como <button>Click to do something</button>
son botones de envío.
Establezca type="button"
para cambiar eso. type="submit"
es el valor predeterminado (como se especifica en la recomendación de HTML ).
Tengo un formulario HTML donde uso varios botones. El problema es que no importa en qué botón haga clic, el formulario será enviado aunque el botón no sea del tipo "enviar". Por ejemplo, botones como: <button>Click to do something</button>
, como resultado, se envía el formulario.
Es bastante doloroso hacer un e.preventDefault()
para cada uno de estos botones.
Uso jQuery y jQuery UI y el sitio web está en HTML5.
¿Hay alguna forma de desactivar este comportamiento automático?
No es difícil hacer lo que quieres. Podrías intentar usar return false (return false reemplaza el comportamiento predeterminado en cada elemento DOM) así:
myform.onsubmit=function()
{
//do what you want;
return false;
}
y luego envíe su formulario usando myform.submit ()
o alternativamente :
mybutton.onclick=function ()
{
//do what you want;
return false;
}
Sin embargo, creo que Input type = "button" / Button type = "button" no enviará su formulario y podría usarlos sin ningún problema.
si desea agregar directamente a la entrada como atributo, use esto
onclick="return false;"
<input id = "btnPlay" type="button" onclick="return false;" value="play" />
esto evitará el comportamiento de entrega de formulario
<button>
son, de hecho, botones de envío, no tienen otra funcionalidad principal. Deberá configurar el tipo de botón.
Pero si enlaza su controlador de eventos como se muestra a continuación, apunte a todos los botones y no tenga que hacerlo manualmente para cada botón.
$(''form button'').on("click",function(e){
e.preventDefault();
});