Principales respuestas
ventana de confimacion de datos,en formulario via post

Pregunta
-
Hola nuevamente.
Ahora estoy enviado datos por un formulario via post al controlador y necesito crear un cuadro o popup de confirmación de envió de estos datos. o sea que muestre una ventana con un texto de confirmación con un si y no(si es no se queda en la pagina aspx y si es si va al controlador(al publicactionresult con los datos).
puede ser javascript(no me manejo mucho en ello).
estoy programando en c#, mvc 2.0
saludos y gracias.
Respuestas
-
Buenas!
Una forma sencilla, y elegante, es no poner boton de submit en el <form> y gestionar el submit a través de un botón, de un enlace, o de lo que quieras. Imagina que tienes un <form> y un <a> para enviar el form (podría ser un botón no hay problema):
<form id="myform" action="..." method="post"> <!-- Controles --> </form> <a href="#" id="lnkEnviar">Enviar datos"</a>
Luego puedes colocar un poco de código javascript, para que en el click del enlace se envíe el formulario, previa confirmación. Usando jQuery quedaría así:
$(document).ready(function() { $("#lnkEnviar").click() { var ok = confirm("Seguro que quieres enviar los datos?"); if (ok) { $("#myform").submit(); } } });
Nota: El método confirm de javascript muestra un msgbox con dos opciones (Sí / No) y devuelve true o false en función de la opción pulsada.
Saludos!
Eduard Tomàs Blog: http://geeks.ms/blogs/etomas -- Twitter: eiximenis- Propuesto como respuesta Agre01 martes, 17 de mayo de 2011 16:24
- Marcado como respuesta Eder Costa miércoles, 10 de octubre de 2012 12:51
-
Ahora me funciono, puse el codigo javascript asi:
<input type="button" id="lnkEnviar" value="Continuar" name="boton" style="width: 82px;" /> <script type="text/javascript"> $("#lnkEnviar").click(function() { var ok = confirm("Seguro que quieres enviar los datos? \nDespues no podran ser modificados."); if (ok) { $("#myform").submit(); } } ); </script>
Gracias por la ayuda.
Saludos.- Marcado como respuesta Eder Costa miércoles, 10 de octubre de 2012 12:51
Todas las respuestas
-
Buenas!
Una forma sencilla, y elegante, es no poner boton de submit en el <form> y gestionar el submit a través de un botón, de un enlace, o de lo que quieras. Imagina que tienes un <form> y un <a> para enviar el form (podría ser un botón no hay problema):
<form id="myform" action="..." method="post"> <!-- Controles --> </form> <a href="#" id="lnkEnviar">Enviar datos"</a>
Luego puedes colocar un poco de código javascript, para que en el click del enlace se envíe el formulario, previa confirmación. Usando jQuery quedaría así:
$(document).ready(function() { $("#lnkEnviar").click() { var ok = confirm("Seguro que quieres enviar los datos?"); if (ok) { $("#myform").submit(); } } });
Nota: El método confirm de javascript muestra un msgbox con dos opciones (Sí / No) y devuelve true o false en función de la opción pulsada.
Saludos!
Eduard Tomàs Blog: http://geeks.ms/blogs/etomas -- Twitter: eiximenis- Propuesto como respuesta Agre01 martes, 17 de mayo de 2011 16:24
- Marcado como respuesta Eder Costa miércoles, 10 de octubre de 2012 12:51
-
Hola, me aparece la ventana de confirmacion, pero cuando se carga la pagina, antes de deplegargarla y sin apretar el boton "continuar".
tengo el codigo asi:
<asp:Content1>titulo</> <asp:Content2>contenido <form action="<%= Url.Action("Perfil","Home") %>" method="post" id="formPerfil"> <%-- controles html --%> </form> <%--el boton--%> <input type="submit" class="botonir" value="Continuar" name="boton" style="width: 82px;" /> <%--tambien probe con--%> <a href="#" id"boton">Continuar</a> <%-- y --%> <input type="button" class="botonir" value="Continuar" name="boton" style="width: 82px;" /> <%--y el javascript--%> <%--comente el $(document).ready(function() pensando que con eso me daba error al mandar el mensaje al cargar la pagina pero no. --%> <script type="text/javascript"> //$(document).ready(function() { $("#boton").click(); { var ok = confirm("Seguro que quieres enviar los datos?"); if (ok) { $("#formPerfil").submit(); } }; //}); </script> </asp:Content2>
y cuando pogo cancelar, luego click en continuar no pasa nada.
que estoy haciendo mal?
saludos
-
Buenas!
El botón que tienes no debería ser un <input type="submit" /> sino un <input type="button" /> para que no intente submitear el formulario.
Lo que no veo es porque no te funciona la prueba usando el tag <a>. Sólo se me ocurre una cosa: no se si ha sido un error al copiar el código, pero en el <a> que has puesto en el foro, tienes id"boton", falta el = (id="boton"). Si lo tienes así en tu código real no te funcionará.
Ya me dirás! ;-)
Saludos!
Eduard Tomàs Blog: http://geeks.ms/blogs/etomas -- Twitter: eiximenis -
Ahora me funciono, puse el codigo javascript asi:
<input type="button" id="lnkEnviar" value="Continuar" name="boton" style="width: 82px;" /> <script type="text/javascript"> $("#lnkEnviar").click(function() { var ok = confirm("Seguro que quieres enviar los datos? \nDespues no podran ser modificados."); if (ok) { $("#myform").submit(); } } ); </script>
Gracias por la ayuda.
Saludos.- Marcado como respuesta Eder Costa miércoles, 10 de octubre de 2012 12:51