SoloCodigo

Programación Web y Scripting => JavaScript => Mensaje iniciado por: 5erg10 en Domingo 24 de Abril de 2005, 19:39

Título: Pasar Datos Entre Ventanas
Publicado por: 5erg10 en Domingo 24 de Abril de 2005, 19:39
Nass a tod@s de nuevo. Tengo un problemilla que ahora mismo no se me ocurre la forma de resolver, a ver si podéis echarme una mano.

La cosa es que tengo una serie de listas desplegables para escoger una fecha (concretamente tres, una para el día, otra para el mes y otra para el año), y detrás añado un botón para abrir un minicalendario en otra página, y la idea es que pinchando en los días de ese calendario, éste se cierre y en las listas desplegables aparezca la fecha elegida. Vamos, algo parecido a lo que hay en ésta página: Avis (http://www.avis.es/).

El problema es que lo máximo que he conseguido es que al elegir la fecha en el calendario, en esta "miniventana" aparezca lo que quiero que apareciese en la página principal.

Vamos, que básicamente lo que busco es la forma de pasar unas variables que se encuentren en una página del explorador, a otra ventana, lo cual no sé si es posible.

¿alguien me puede guiar? Muchas gracias ;)
Título: Re: Pasar Datos Entre Ventanas
Publicado por: 5erg10 en Domingo 24 de Abril de 2005, 20:10
Bueno, después de buscar un rato a ciegas, creo que la mejor opción es usar "window.opener" para cambiar los datos de la página origen.

El problema ahora es que no sé como puedo cambiar las variables que tengo en esa página, es decir, si tengo una variable llamada $dia, ¿cómo podría cambiarla desde la ventana secundaria usando window.opener?

Gracias por la ayuda.
Título: Re: Pasar Datos Entre Ventanas
Publicado por: 5erg10 en Domingo 24 de Abril de 2005, 20:23
Vale, ya está solucionado. Al final utilicé la siguiente instrucción:
Código: Text
  1.  
  2. window.opener.location.href="pagina.php?dia="+dia+"&mes="+mes+"&ano="+ano;
  3.  
  4.  
Gracias de todas formas ;)
Título: Re: Pasar Datos Entre Ventanas
Publicado por: Altareum en Lunes 25 de Abril de 2005, 15:42
Perdona por no haber contestado antes, es que no vi tu mensaje.
Creo (no estoy del todo seguro), que no se pueden pasar valores a una variable de javascript desde otra ventana, solo enviar por GET.

Igualmente, por lo que comentas de tu script, si puedes hacer que al hacer click en el calendario, 'desplace' la lista hasta la fecha seleccionada sin necesidad de recargar la página.
Esto lo puedes hacer de la siguiente manera:

Código: Text
  1.  
  2. <select id="dia">
  3.   <option value="1">01</option>
  4.   <option value="2">02</option>
  5.   <option value="3">03</option>
  6.   <option value="4">04</option>
  7. </select>
  8.  
  9.  
Y en el calendario pones:
Código: Text
  1.  
  2. window.opener.document.getElementById('dia').options[2].selected = 'true';
  3.  
  4.  

Espero que te sirva (y funcione ya que no he tenido tiempo de provarlo).
Salduos.
Altareum.
Título: Re: Pasar Datos Entre Ventanas
Publicado por: 5erg10 en Lunes 25 de Abril de 2005, 18:33
Pues muchas gracias, ahora va bastante mejor y más rápido.

Un saludo y :gracias: de nuevo :P