Foros del Web » Programando para Internet » Javascript »

Problema con alert al enviar formulario

Estas en el tema de Problema con alert al enviar formulario en el foro de Javascript en Foros del Web. Hola, en mi página de un formulario tengo un mensaje de confirm que al salir me dice que si quiero salir realmente de la página, ...
  #1 (permalink)  
Antiguo 11/08/2011, 10:33
Avatar de JHTKoZ  
Fecha de Ingreso: noviembre-2009
Ubicación: Teocaltiche, Mexico
Mensajes: 67
Antigüedad: 14 años, 5 meses
Puntos: 0
Exclamación Problema con alert al enviar formulario

Hola, en mi página de un formulario tengo un mensaje de confirm que al salir me dice que si quiero salir realmente de la página, lo malo es que al enviar el formulario también me aparece ese confirm por salirme de la página, hay alguna forma de evitarlo en el envío del form?
  #2 (permalink)  
Antiguo 11/08/2011, 10:37
Avatar de Heiroon  
Fecha de Ingreso: junio-2010
Ubicación: Caracas, Venezuela - Por ahora...
Mensajes: 495
Antigüedad: 13 años, 10 meses
Puntos: 63
Exclamación Respuesta: Problema con alert al enviar formulario

en que evento lanzas dicho confirm?? Muestre algo de código majo!
__________________
Gmail : [email protected]
Twitter: @heiroon

I'm back!
  #3 (permalink)  
Antiguo 11/08/2011, 11:41
Avatar de JHTKoZ  
Fecha de Ingreso: noviembre-2009
Ubicación: Teocaltiche, Mexico
Mensajes: 67
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Problema con alert al enviar formulario

Esto es lo que tengo en el body

Código HTML:
Ver original
  1. <body onUnload="window.confirm('&iquest;Realmente desea salir de la pagina? Los datos no seran guardados.')">

Y el botón valida al darle click manda llamar a una función de validación en javascript, el punto es que cuando valida correctamente ya envía el formulario así.

Código PHP:
Ver original
  1. if(valid)
  2. {
  3.     document.add_patient.submit();
  4. }
  #4 (permalink)  
Antiguo 11/08/2011, 13:24
Avatar de JHTKoZ  
Fecha de Ingreso: noviembre-2009
Ubicación: Teocaltiche, Mexico
Mensajes: 67
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Problema con alert al enviar formulario

Alguna idea?
  #5 (permalink)  
Antiguo 12/08/2011, 01:28
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 66
Respuesta: Problema con alert al enviar formulario

buenas,

no sé si te he entendido, o no hablamos de lo mismo, jejejeje, pero bueno, te puedo pasar una función que cierra una ventana padre sin que te pida confirmación de cierre:

Código Javascript:
Ver original
  1. function salir()
  2. {
  3.     if(confirm("¿Desar Salir?"))
  4.     {
  5.         window.open('','_parent','');
  6.         window.close();
  7.     }
  8. }

pero lo dicho, no sé si es lo que estás buscando, pero una idea es! ;)

saludos.
  #6 (permalink)  
Antiguo 12/08/2011, 02:46
Avatar de Batan  
Fecha de Ingreso: septiembre-2010
Ubicación: Madrid
Mensajes: 408
Antigüedad: 13 años, 7 meses
Puntos: 63
Respuesta: Problema con alert al enviar formulario

Muy buenas.
@CeSharp ese script le cerrará siempre le manda la confirmacion para cerrar la ventana(incluso le muestra la confirmación despues de cerrarla), aunque envie los datos.
Él lo que quiere es que al enviar los datos del formulario no le muestre la ventana de confirmación, pero que al cerrar esta ventana, si tenga que mostrar la confirmación.
Es un poco complicado esto, creo. No soy un experto.



@JHTKoZ al invocar el evento onunload en el body directamente harás que la página siempre te muestre el mensaje al cerrar la página(o al cambiar a otra), esto ya lo sabes.

Por lo cual, ahora deberias pensar que ese evento se debe realizar al validar el formulario.
Osea en la validación correcta no poner ningun window.confirm obviamente.

Pero en el incorrecto aparte de invalidar el formulario, especificar también si la página es abandonado/cerrado.

Lo que nose es como.
windows.close()?

Jaja no claro no, pero algo asi

Saludos
  #7 (permalink)  
Antiguo 12/08/2011, 05:00
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 66
Respuesta: Problema con alert al enviar formulario

vale confirmado, no me habia enterado de nada, jajajajaj.

con --> document.activeElement.id <-- puedes saber qué objeto tiene el foco, de tal manera que lo puedes aplicar en el onunload:
Código Javascript:
Ver original
  1. window.onunload=function()
  2.     {
  3.         if(document.activeElement.id != 'add_patient')
  4.         {
  5.             confirm('Realmente desea salir de la pagina? Los datos no seran guardados.')
  6.         }
  7.     }
el confirm en este caso no hace nada de nada, pero sale solo si el botón con ID='add_patient' no tiene el foco, vamos, que se ha hecho clic en él.

a ver si ahora me he enterado, jejejeje.

saludos.
  #8 (permalink)  
Antiguo 12/08/2011, 09:32
Avatar de JHTKoZ  
Fecha de Ingreso: noviembre-2009
Ubicación: Teocaltiche, Mexico
Mensajes: 67
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Problema con alert al enviar formulario

Cita:
Iniciado por ceSharp Ver Mensaje
vale confirmado, no me habia enterado de nada, jajajajaj.

con --> document.activeElement.id <-- puedes saber qué objeto tiene el foco, de tal manera que lo puedes aplicar en el onunload:
Código Javascript:
Ver original
  1. window.onunload=function()
  2.     {
  3.         if(document.activeElement.id != 'add_patient')
  4.         {
  5.             confirm('Realmente desea salir de la pagina? Los datos no seran guardados.')
  6.         }
  7.     }
el confirm en este caso no hace nada de nada, pero sale solo si el botón con ID='add_patient' no tiene el foco, vamos, que se ha hecho clic en él.

a ver si ahora me he enterado, jejejeje.

saludos.
Hola, no me sirvió el código, pero creo que no me expliqué bien jeje, lo que necesito es que al tratar de salir de la página me muestre una confirmación de que si realmente quiero salir de la página. Pero que al enviar mi formulario no me muestre esa confirmación.

Etiquetas: confirm, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:41.