Foros del Web » Programando para Internet » Javascript »

Escribir en la ventana padre, a través de la hija

Estas en el tema de Escribir en la ventana padre, a través de la hija en el foro de Javascript en Foros del Web. Hola: Pues mi problema, es que tengo una ventana padre, y que a la vez que se abre la padre, se abre la hija. Hasta ...
  #1 (permalink)  
Antiguo 17/05/2010, 10:18
 
Fecha de Ingreso: marzo-2008
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 3
Pregunta Escribir en la ventana padre, a través de la hija

Hola:
Pues mi problema, es que tengo una ventana padre, y que a la vez que se abre la padre, se abre la hija. Hasta ahí todo bien.
Pero después en la hija, tengo unos links, como este:
Código HTML:
<A HREF="javascript:escribir('Hola')">1</A> 
Y mi problema, es que en este href, va a una function, llamada escribir, y esta tiene que hacer que se escriba Hola en la ventana padre. Pero no sé cómo. Yo tengo esto, pero no funciona:
Código HTML:
function escribir(texto) {
opener.document.write = texto;
}
Alguien sabe cual es mi error?

Gracias de antemano
  #2 (permalink)  
Antiguo 17/05/2010, 10:31
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Escribir en la ventana padre, a través de la hija

write no es una propiedad, sino un metodo.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 17/05/2010, 11:45
 
Fecha de Ingreso: marzo-2008
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 3
Respuesta: Escribir en la ventana padre, a través de la hija

Tienes toda la razón. Pero es que no se me ocurrían ni se me ocurren nada.

He llegado a sacar, que para enviar un texto de una caja de texto, se haría así, creo:
Código HTML:
 window.opener.document.getElementById("text1");
Pero si es de un link, como es mi caso, no sé como hacerlo.

Alguien me ayuda?

Muchas gracias
  #4 (permalink)  
Antiguo 17/05/2010, 11:53
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Escribir en la ventana padre, a través de la hija

al enlace no tienes que hacerle nada, solo tienes que modificar tu funcion. vas bien con el ultimo codigo que mostrastes, solo te falta indicar escribir en la propiedad value de ese elemento que has obtenido por id.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 17/05/2010, 12:18
 
Fecha de Ingreso: marzo-2008
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 3
Respuesta: Escribir en la ventana padre, a través de la hija

Pues entonces sería esto?
Código HTML:
function escribir(texto) {
window.opener.document.getElementById(texto).value;
}
Yo lo pruebo, y no me funciona, lo he probado en firefox y en internet explorer, pero nada.
Tambien lo he probado con comillas simples a los lados de la palabra texto, pero asi no es.

Gracias por sus respuesta!
  #6 (permalink)  
Antiguo 17/05/2010, 12:21
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Escribir en la ventana padre, a través de la hija

¡claro, si no estas asignandole nada a esa propiedad! luego de la propiedad le asignas el parametro de la funcion.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 17/05/2010, 12:37
 
Fecha de Ingreso: marzo-2008
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 3
Respuesta: Escribir en la ventana padre, a través de la hija

Si, tienes razón, que no le asigno nada...
Pero he probado ya mil cosas y no sé, todavia no entiendo bien el como llegar a escribir en la ventana padre desde la hija!
Código HTML:
window.opener.document.getElementById()=texto.value;
Gracias
  #8 (permalink)  
Antiguo 17/05/2010, 12:45
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Escribir en la ventana padre, a través de la hija

Código:
window.opener.document.getElementById("text1").value = texto;
asumiendo que "text1" es el id de un elemento INPUT.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #9 (permalink)  
Antiguo 17/05/2010, 12:52
 
Fecha de Ingreso: marzo-2008
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 3
Respuesta: Escribir en la ventana padre, a través de la hija

No me funciona.
Pero es que lo tengo que escribir en una ventana en blanco, que es la padre. Es decir, que no hay ningun input ni nada.
O, ¿es que tengo que crear un input en la padre?

En la hija tengo varios links (href) que cada vez que se pulse, se tiene que escribir una nueva frase, sin borrar la anterior.

Muchas gracias!
  #10 (permalink)  
Antiguo 17/05/2010, 12:58
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Escribir en la ventana padre, a través de la hija

pues me confundistes en tu segundo mensaje. por alguna razon pense que te tenias un formulario en el padre y querias escribir en un INPUT. una total perdida, nada de lo que te dije antes te va funcionar. back to square one... una forma de escribir al documento es con la funcion write como inicialmente tenias planificado. de nuevo, estabas tratando write como una propiedad y no como una funcion. tienes que invocar write pasandole como parametro el argumento de tu funcion.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #11 (permalink)  
Antiguo 17/05/2010, 13:07
 
Fecha de Ingreso: marzo-2008
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 3
Respuesta: Escribir en la ventana padre, a través de la hija

puff, ahora ya si que no sé...
Tengo este código, pero no me funciona
Código HTML:
window.opener.document.write = texto;
No sé que función tengo que usar para esto, la verdad.

Muchas gracias!
  #12 (permalink)  
Antiguo 17/05/2010, 13:23
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Escribir en la ventana padre, a través de la hija

¿sabes como se invocan las funciones? se usa un par de parentesis luego del nombre de la funcion. dentro del parentesis va una lista de parametros para ser usado por la funcion. en el caso de write, éste acepta una cantidad invariable de parametros pero en tu caso solo necesitas pasar uno.
Código:
document.write(texto);
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #13 (permalink)  
Antiguo 17/05/2010, 13:37
 
Fecha de Ingreso: marzo-2008
Mensajes: 197
Antigüedad: 16 años, 1 mes
Puntos: 3
Respuesta: Escribir en la ventana padre, a través de la hija

Por fin!!!
si, que sé como se llama y se crea una funcion. escribí una arriba.
El código que me has dicho, era para escribir en la misma ventana en la que se da al link, es decir, en la hija.
Entonces para llamar a la padre se pone delante el window.opener

Es decir, que era como yo habia dicho al principio:
Código HTML:
opener.document.write = texto;
Pero en vez de poner un =, era entre paréntesis!!!!!
Código HTML:
window.opener.document.write(texto);
Puff, tanto para una simpleza asi...

Muchas gracias por tu ayuda!!

Etiquetas: escribir, padre, ventanas
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 03:05.