Formulario con 2 acciones diferentes
Usamos la función attr de jQuery para cambiar valor del atributo action del formulario que contiene la url donde se procesaran los diferentes elementos del form. Y las url las pasamos en ese caso por medio del tag “dir” en cada botón.
$(document).ready(function(){ $("input[type=submit]").click(function() { var accion = $(this).attr('dir'); $('form').attr('action', accion); $('form').submit(); }); });el código del formulario
<form method="post" action=""> <input type="submit" name="boton_1" id="boton_1" value="Boton 1" dir="accion_1.php" /> <input type="submit" name="boton_2" id="boton_2" value="Boton 2" dir="accion_2.php" /> </form>fuente
5
Puntos
Puntos
5628
Visitas
Visitas
2
Resp
Resp
Por alber hace 123 meses
Administrador
Respuesta #1
Hola buena función, pero creería que es más optimo de esta manera:
Saludos
$(document).ready(function(){ $("input[type=submit]").click(function(e) { e.preventDefault(); var accion = $(this).attr('dir'), $form = $(this).closest('form'); if(typeof accion !== 'undefined'){ $form.attr('action', accion); } $form.submit(); }); });Esto soluciona dos inconvenientes, evitar el submit del formulario antes de que cambie el action y segundo que funcione para cualquier tipo de formulario que tengamos. Independientemente de que si queremos o no cambiar el action.
Saludos
5
Puntos
Puntos
Por jonni09lo hace 123 meses
Experto