Foros del Web » Programando para Internet » Javascript »

Dos action en un form, uno de ellos se abre en popo

Estas en el tema de Dos action en un form, uno de ellos se abre en popo en el foro de Javascript en Foros del Web. Hola, estuve dando muchas vueltas por el foro y probando todas las opciones que ponian, incluso en las faq's. La cuestion es que logre poner ...
  #1 (permalink)  
Antiguo 01/01/2008, 22:18
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 6 meses
Puntos: 1
Dos action en un form, uno de ellos se abre en popo

Hola, estuve dando muchas vueltas por el foro y probando todas las opciones que ponian, incluso en las faq's. La cuestion es que logre poner dos acciones en un form de muchas formas distintas, pero siempre algo sucedia.

La idea es que una de las acciones se abra en un popup para que sea una vista previa, y la otra envia los datos para guardarlos en la BD via PHP.

A veces, cuando se abria el popup con la accion 2 lo abria bien, pero la ventana padre se redireccionaba a la "nada"; otras veces cuando apretaba enviaba el action 2 (del popup) mostraba correctamente los datos enviados, pero luego al cerrarla y apretar el boton con el action 1 (el que envia los datoa a la BD, con php) se comportaba como action 2.

A alguien se le ocurre como poder hacer correctamente lo que quiero?

Muchas gracias!
  #2 (permalink)  
Antiguo 02/01/2008, 01:10
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Re: Dos action en un form, uno de ellos se abre en popo

Hola:

Debías haber puesto el código, pero veremos que se puede hacer...

Para el botón del popup, deberías hacer los cambios y enviar, pero luego restaurar los valores, así que tal vez sea mejor que no se trate del tipo submit:

<button type="button" onclick="prever(this.form)" >vista previa</button>

Y en el head definir prever()...

function prever(f) {
ventana = window.open("", "popup", "width=400,height=250");
action_guardado = f.action;
target_guardado = f.target;
with (f) {
action = "popup.php";
target = "popup";
submit();
action = action_guardado;
target = target_guardado;
}
}

Así el submit es forzado, por lo que las validaciones que tuvieras no funcionarían... y fíjate que antes de forzar el submit se guardan y modifican los atributos action y target, y después se recuperan.
El envío normal no deberías modificarlo (supuestamente un botón submit)

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 02/01/2008, 09:35
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 6 meses
Puntos: 1
Re: Dos action en un form, uno de ellos se abre en popo

Hola caricatos! gracias por tu respuesta! No puse códigos, porque la verdad es que probé muchsísimos!

Hice lo que me pusiste vos, pero me sucedió una de las cosas que comentaba anteriormente, al apretar el botón de vista previa, se abre el popup correctamente mostrándome los datos del form, pero a su vez, en la ventana padre se ejecuta la accion del form.

Mil disculpas si soy molesto, pero no conozco mucho sobre javascript.

Gracias!
  #4 (permalink)  
Antiguo 02/01/2008, 11:08
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Re: Dos action en un form, uno de ellos se abre en popo

Hola:

Verás, el código que puse funciona bien, así que tienes que tener algún error... revisa tu código.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #5 (permalink)  
Antiguo 02/01/2008, 11:51
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 6 meses
Puntos: 1
Re: Dos action en un form, uno de ellos se abre en popo

Que raro! sigue funcionando mal

Código PHP:
<form id="nota" name="nota" method="post" action="noticias.php?accion=editar_noticia_accion">

// Campos

<input type="submit" name="button" id="button" value="Editar" />
<
button type="button" onclick="prever(this.form)" >vista previa</button>

</
form
Asi está mi form. Ademas está puesta la funcion de js entre los head. Si no está aca el problema, entonces debe ser por lo complejo de la aplicacion.

Voy a seguir intentando. Gracias!
  #6 (permalink)  
Antiguo 02/01/2008, 17:30
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Re: Dos action en un form, uno de ellos se abre en popo

Hola:

Prueba esto:

Código:
<html>
<head>
<script>
function prever(f) {
	ventana = window.open("", "popup", "width=400,height=250");
	action_guardado = f.action;
	target_guardado = f.target;
	with (f) {
		action = "popup.php";
		target = "popup";
		submit();
		action = action_guardado;
		target = target_guardado;
	}
}
</script>
</head>
<body>
<form action="../articulos/receptor.php" name="fo" method="get" target="_self" >
<input type="text" name="prueba" value="Ok" />
<button type="button" onclick="prever(this.form)" >vista previa</button>
<button type="submit" >enviar</button>
</form>
</body>
</html>
Cópialo y pégalo en esta página: Probador de scripts
... en la pestaña Editar... y luego pulsa el botón "en ventana"...

Si sigue fallando, dinos el navegador que usas... ¡o has usado otro código!...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 16/01/2008, 14:14
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 6 meses
Puntos: 1
Re: Dos action en un form, uno de ellos se abre en popo

caricatos, antes que nada, mil disculpas la demora, estuve de vacaciones estos días y fue imprevisto.

Estuve probando y en IE funciona correctamente, pero en Firefox no funciona. Hay alguna alternativa apra esto?

Gracias!
  #8 (permalink)  
Antiguo 16/01/2008, 15:33
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 1 mes
Puntos: 1284
Re: Dos action en un form, uno de ellos se abre en popo

Hola:

Pues yo justamente uso FF y es donde probé el código (y lo volví a probar...), tal vez has copiado mal algo, u no lo has probado bien...¿Cuál es la versión que usas?

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #9 (permalink)  
Antiguo 16/01/2008, 17:20
 
Fecha de Ingreso: noviembre-2005
Ubicación: Córdoba - Argentina
Mensajes: 155
Antigüedad: 18 años, 6 meses
Puntos: 1
Re: Dos action en un form, uno de ellos se abre en popo

Uso la versión 2.0.0.11 de Firefox. Pero entonces es mas raro!
En Explorer 6 anduvo bien, pero en FF es el problema.
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 08:29.