JavaScript - Como pasar datos de Padre a popUp modal?

 
Vista:

Como pasar datos de Padre a popUp modal?

Publicado por Ignacio (3 intervenciones) el 23/10/2006 17:15:23
Hola gente, tenía una duda y es que no se como pasar datos desde una ventana padre hacia una hijo, y la hijo debe ser modal (a la fuerza).
Se hacerlo a al inversa (popUp modal a Padre), se hacerlo de Padre a un popUp normal (no modal). Pero cuando se abre de forma modal (window.showModalDialog) se jode todo.
No se si existe otra manera de abrirlo en modo modal y que te recupere
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Así se hace

Publicado por Ignacio (3 intervenciones) el 03/11/2006 10:08:04
Ejemplo de pasar datos del padre al hijo y ejemplo de pasar del hijo al padre.

Ventana Padre que pasa datos a la ventana hija en modo modal.

<HTML>
<BODY>
<INPUT type=text id=DatoPadre1>
<INPUT type=text id=DatoPadre2>
<INPUT type=text id=DatoPadre3>
<br>
<input type='button' onclick="AbreVentanaModal()" value="Modificar">
</BODY>
</HTML>

<SCRIPT>
//creamos una variable de tipo array para pasar y recuperar los datos
var datos=new Array();

function AbreVentanaModal(){
datos[0]=DatoPadre1.value;
datos[1]=DatoPadre2.value;
datos[2]=DatoPadre3.value;

//aqui paso los datos a la ventana hija
datos=showModalDialog('hija.html',datos,'status:no;resizable:yes');

//aqui recuepero datos de la ventana hija
DatoPadre1.value=datos[0];
DatoPadre2.value=datos[1];
DatoPadre3.value=datos[2];
}
</SCRIPT>

Ventana hija que recupera los datos de la ventana padre y al salir le devuelve los datos a la ventana padre.

<HTML>
<BODY onload="RecuperaDatos();">
<INPUT type=text id=DatoHijo1>
<INPUT type=text id=DatoHijo2>
<INPUT type=text id=DatoHijo3>
<br>
<input type='button' onclick="Devuelve()" value="Devuelve">
</BODY>
</HTML>

<SCRIPT>
//creamos una variable de tipo array para recuperar y devolver los datos
var datos=new Array();

//aqui recuperamos los datos de la ventana padre
function RecuperaDatos(){
datos=dialogArguments;
DatoHijo1.value=datos[0];
DatoHijo2.value=datos[1];
DatoHijo3.value=datos[2];
}

//aqui le devolvemos los datos a la ventana padre
function Devuelve(){
datos[0]=DatoHijo1.value;
datos[1]=DatoHijo2.value;
datos[2]=DatoHijo3.value;

returnValue = datos;
window.close();
}
</SCRIPT>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Solo funciona en Firefox

Publicado por Roberto (1 intervención) el 07/04/2017 05:03:25
Este ejemplo es bueno pero lo malo es que solo funciona en Firefox
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar