Foros del Web » Programando para Internet » Javascript »

Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Estas en el tema de Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal en el foro de Javascript en Foros del Web. Hola a tod@s, quiero hacer una cosilla y creo que la solución está en hacerlo por javascript, aunque no se muy bien como. Os pongo ...
  #1 (permalink)  
Antiguo 21/05/2008, 02:11
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Hola a tod@s, quiero hacer una cosilla y creo que la solución está en hacerlo por javascript, aunque no se muy bien como. Os pongo en situación. Tengo un formulario que el usuario va rellenando, y en uno de los campos quiero hacer lo siguiente: si el usuario sabe lo que tiene que poner, pues nada, lo pone en el campo y listo. Si no lo sabe, tendrá junto al campo de texto un enlace a un buscador. Al pulsar el enlace, debería abrirse un pop-up con un pequeño buscador. Una vez hecha la búsqueda, de entre los posibles resultados el usuario seleccionaría uno de un desplegable y le daría a un boton. Al hacer esto, se cerraría el pop up y en la ventana principal se pondría automáticamente el valor en el campo de texto que corresponde.

¿¿Es muy complicado de hacer todo esto?? Me podeis echar una manita por favor??

Muchas gracias por adelantado, salu2
__________________
Vayamos por Partes :: Jack el Destripador
  #2 (permalink)  
Antiguo 21/05/2008, 02:20
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Vamos a imaginar que el campo donde tiene que escribir inicialmente el visitante tiene por id "PEPE" (perdona, pero es que tengo debilidad por este nombre). Y la popup podría tener el siguiente select:

<select id="juan" name="juan" size="1" onchange = "opener.document.getElementById('PEPE').value = this.options[this.selectedIndex].text; self.close()" >
<option value="0" selected="selected">Elija una opción</option>
<option value="1" >Roberto</option>
<option value="2">Rodrigo</option>
<option value="3">JAcinto</option>
<option value="4">Modesto</option>
<option value="5">5</option>
</select>


Si en vez del texto quieres que pase el value debes cambiar this.options[this.selectedIndex].text por this.value

Dime si te sirve!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 21/05/2008 a las 02:24 Razón: Faltaba un By!!
  #3 (permalink)  
Antiguo 21/05/2008, 02:25
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Pues yo diría que es perfecto, ahora después lo pruebo y te comento, pero vamos, por lo que veo es exactamente lo que estoy buscando.
Solo una duda, si quiero poner el value, la cosa quedaría tal que así

Código PHP:
<select id="juan" name="juan" size="1" onchange "opener.document.getElementById('PEPE').value = this.value; self.close()" >
<
option value="1" selected="selected">Roberto</option>
<
option value="2">Rodrigo</option>
<
option value="3">JAcinto</option>
<
option value="4">Modesto</option>
<
option value="5">5</option>
</
select
Verdad??? Muchas gracias Karlankas, salu2
__________________
Vayamos por Partes :: Jack el Destripador

Última edición por angel_dope; 21/05/2008 a las 03:06 Razón: Faltaba un BY
  #4 (permalink)  
Antiguo 21/05/2008, 02:27
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Eso es, quedaría así. Pero ten cuidado que se me coló una errata y en vez de poner getElementById pone getElementId. Corrigelo porque si no no te funcionará.

Un saludo! Y de nada!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #5 (permalink)  
Antiguo 21/05/2008, 03:16
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Hola Karlankas, lo acabo de probar y no funciona :( al seleccionar algun elemento del desplegable, no cierra la ventana y da un error de javascript. El error es el siguiente:

Cita:
EL OBJETO NO ACEPTA ESTA PROPIEDAD O METODO
Y lo da en la linea
Código PHP:
<select id="juan" name="juan" size="1" onchange "opener.document.getElementbyId('valor').value = this.value; self.close()" 
Te pongo el código que he usado para llamar al popup y como ha quedado la página que se abre dentro del popup.

Script para abrir popup
Código PHP:
<script language="JavaScript"
   function 
abrirVentana() { 
    
open("resultados.asp"); 
   } 
  
</script> 
Llamada al script
Código PHP:
<input type="button" name="boton" value="Buscar" onClick="abrirVentana()"
PopUp que se abre
Código PHP:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<
title>Documento sin t&iacute;tulo</title>
</
head>

<
body>
<
select id="juan" name="juan" size="1" onchange "opener.document.getElementbyId('valor').value = this.value; self.close()" 
<
option value="1" selected="selected">Roberto</option
<
option value="2">Rodrigo</option
<
option value="3">JAcinto</option
<
option value="4">Modesto</option
<
option value="5">5</option
</
select>  
</
body>
</
html
Una cosilla, la ventana principal, también es un popup, puede ser que de problemas por eso??
__________________
Vayamos por Partes :: Jack el Destripador
  #6 (permalink)  
Antiguo 21/05/2008, 03:19
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Pues va ser que no es porque la principal ya es un popup, porque acabo de probarlo desde una ventana normal y hace lo mismo :S
__________________
Vayamos por Partes :: Jack el Destripador
  #7 (permalink)  
Antiguo 21/05/2008, 03:25
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

He estado probando y el fallo es por la parte esta:

Código PHP:
opener.document.getElementbyId('valor').value this.value
Si quito eso si que cierra la ventana, pero claro, no asigna el valor. Lo he probado con Explorer 6 y 7 por si fuese tema de versiones, pero hace lo mismo en ambas. Alguna idea??
__________________
Vayamos por Partes :: Jack el Destripador
  #8 (permalink)  
Antiguo 21/05/2008, 04:08
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Efectivamente el fallo está ahí. Es porque el by hay que ponerlo así: By (En javascript las mayusculas son importantes).

Cambialo por esto:

opener.document.getElementById('valor').value = this.value;

Un saludo!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #9 (permalink)  
Antiguo 21/05/2008, 04:14
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 21 años, 5 meses
Puntos: 8
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

: DIOSSS Pero que torpe puedo llegar a ser!!!!! Vaya, pues nada, ya lo he corregido y funciona como toca. Ahora solo me falta hacer el buscador, pero eso ya es harina de otro costal jejeje.

Muchas gracias Karlankas, salu2
__________________
Vayamos por Partes :: Jack el Destripador
  #10 (permalink)  
Antiguo 21/05/2008, 04:17
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Respuesta: Abrir pop-up y que al cerrarlo devuelva un valor a la ventana principal

Na, a todos nos pasa. Me alegro de que te funcione!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
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 05:21.