Foros del Web » Programando para Internet » Javascript »

Modificar Contenido de Window.open Firefox

Estas en el tema de Modificar Contenido de Window.open Firefox en el foro de Javascript en Foros del Web. Hola ... les explico lo ke kiero hago y kiero hacer. Tengo esto. en 'index.php' <div id='reporte'>Hola Blasito este es el reporte de pagos .. ...
  #1 (permalink)  
Antiguo 06/09/2011, 13:07
 
Fecha de Ingreso: septiembre-2011
Ubicación: Tingo Maria
Mensajes: 6
Antigüedad: 12 años, 8 meses
Puntos: 0
Modificar Contenido de Window.open Firefox

Hola ... les explico lo ke kiero hago y kiero hacer.

Tengo esto. en 'index.php'
<div id='reporte'>Hola Blasito este es el reporte de pagos .. ( Y una tabla )</div>

con Javascript, abro un window.open('plantilla_impresion.php', 'popimpr');

dentro de 'plantilla_impresion.php', hay un Div.
<div id="contentPlantilla"></div>

Lo que yo kiero haces es pasar el contenido del Div de id='Reporte', al de la otra pagina ke es id='contentPlantilla'

para eso, uso lo siguiente.
var ficha = document.getElementById('reporte');
var ventimp = window.open('plantilla_impresion.php', 'popimpr');
ventimp.document.getElementById("contentPlantilla" ).innerHTML=ficha.innerHTML;

Para finalizar ... en IE , si hace lo ke yo kiero, ke en la nueva ventana este un reporte ke lo tenia en la ventana original.
Pero no entiendo porke en Firefox y en Chrome no kiere, osea carga la pagina nueva pero el contenido no se copia de una pagina a la otra nueva.

en mi trabajo me exigen ke funcionen con al menos esos 3 navegadores, por lo tanto tiene ke funcionar si o si ...

alguna ayuda o idea o algo porfis ... Gracias

PDTA: espero no hay faltado con alguna regla, es mi primer post.
  #2 (permalink)  
Antiguo 06/09/2011, 14:23
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Modificar Contenido de Window.open Firefox

creo que me he hecho un lío. por lo que he entendido, quieres es pasar el contenido de la ventana padre a la ventana hija
Cita:
document.getElementById('contentPlantilla').innerH TML = parent.document.getElementById('reporte').innerHTM L;
  #3 (permalink)  
Antiguo 06/09/2011, 14:33
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: Modificar Contenido de Window.open Firefox

buenas...
@blasblas18, el código esta bastante bien. sin embargo, el problema debe ser que al momento de leer la línea que asigna el contenido a la ventana hija, dicha ventana aún no ha cargado su propio contenido. es decir, al no interpretarse el elemento necesario, javascript no encuentra dicho elemento. primero tienes que cargar el documento antes de transferir el contenido. lo más adecuado sería invocar este proceso desde la ventana hija mediante el evento onload.

@isabelm, supongo que tu propuesta es en relación a la ventana hija. en dicho caso, parent no hace referencia a la ventana principal, sino a un objeto window en la jerarquía de marcos. lo correcto es el objeto self.opener para referirse a la ventana que creo la hija.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #4 (permalink)  
Antiguo 06/09/2011, 15:43
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Modificar Contenido de Window.open Firefox

Cita:
Iniciado por zerokilled Ver Mensaje
@isabelm, supongo que tu propuesta es en relación a la ventana hija. en dicho caso, parent no hace referencia a la ventana principal, sino a un objeto window en la jerarquía de marcos. lo correcto es el objeto self.opener para referirse a la ventana que creo la hija.

sí era con respecto a la ventana hija. parece que confundí popup por iframe. por cierto, tanto self como opener son propiedades del objeto window, self hace referencia a la ventana hija y opener a la ventana padre, entonces sería correcto decir que tanto self.opener, window.opener y opener son perfectamente correctos si queremos hacer referencia a la ventana padre?? y en caso afirmativo, cual sería mas correcto de usar??

gracias
  #5 (permalink)  
Antiguo 06/09/2011, 15:49
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: Modificar Contenido de Window.open Firefox

¡claro! cualquiera de las tres formas es correcta. lo puse así por una simple costumbre que tengo. el punto principal es la referencia opener.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #6 (permalink)  
Antiguo 06/09/2011, 17:37
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Modificar Contenido de Window.open Firefox

ok, gracias
  #7 (permalink)  
Antiguo 07/09/2011, 18:06
 
Fecha de Ingreso: septiembre-2011
Ubicación: Tingo Maria
Mensajes: 6
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Modificar Contenido de Window.open Firefox

MMM me gusto su ayuda de Uds.

PEro...
var ventimp = window.open('plantilla_impresion.php', 'popimpr');

en esa linea no abro la ventana nueva como popup y por lo tanto abre con todo su contenido ke tiene dentro ?? .. o de ke manera puedo hacer para ke
<div id="contentPlantilla"></div>
ya este activa y lo reconosca ... mmm ..
como te digo en IE normal reconoce, pero en FF y CHROME no pasa nada ... sigo intentando de todas maneras pero no me jala esos datos.

T_T T_T T_T T_T
  #8 (permalink)  
Antiguo 07/09/2011, 18:49
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: Modificar Contenido de Window.open Firefox

lo primero que deberías revisar son las consola de errores de los navegadores que te dan problema. en firefox puedes instalar el addons firebug; chrome ya tiene su propia consola. determina cual es el error ya que éste te dará una pista de lo que esta sucediendo. de todos modos, lo que debes hacer es invocar una función desde el documento plantilla_impresion.php que se inicie en el evento load. en esta función realizas el traspaso de contenido desde la ventana principal a la secundaria.

Código:
self.onload = function(){
// nota, el codigo esta abreviado. tal cual esta no funciona;
document.get.....innerHTML = self.opener.document.get....innerHTML;
};
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.

Etiquetas: contenido, firefox, html, modificar, php
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:55.