Foros del Web » Programando para Internet » Javascript »

frames - y javascript

Estas en el tema de frames - y javascript en el foro de Javascript en Foros del Web. Hola mi problema es el siguiente: Tengo un hiddenframe con unas funciones y quiero que sean accesibles desde el frame 'visible'. Como tengo que llamarlas ...
  #1 (permalink)  
Antiguo 24/08/2005, 04:46
 
Fecha de Ingreso: julio-2005
Mensajes: 90
Antigüedad: 18 años, 9 meses
Puntos: 0
frames - y javascript

Hola mi problema es el siguiente:

Tengo un hiddenframe con unas funciones y quiero que sean accesibles desde el frame 'visible'.

Como tengo que llamarlas si es que se puede?
  #2 (permalink)  
Antiguo 24/08/2005, 04:59
Avatar de crcbad  
Fecha de Ingreso: enero-2005
Mensajes: 302
Antigüedad: 19 años, 3 meses
Puntos: 0
Si el hiddenframe se llama "oculto" se pueden llamar así:

[variable = ]oculto.nombreFuncion([Parametros]);

Los corchetes, lo que va dentro quiere decir que es opcional.
__________________

:cool: [ http://eruben.sytes.net ] :cool:


Las dos frases que te ayudarán a salir adelante:
  • No hay mujer fea, solo copas de menos. :borracho:
  • Ante la duda, siempre coge la más tetuda. :arriba:
  #3 (permalink)  
Antiguo 24/08/2005, 05:32
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

Si es un sistema de frames, deberías pasar por el padre...

parent.oculto.tuFuncion()

Aunque también puedes usar la cabecera del framset para tener las funciones:

parent.tuFuncion().

Su fuesen iframes, podría ser window.frames["oculto"]...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 24/08/2005, 05:40
 
Fecha de Ingreso: julio-2005
Mensajes: 90
Antigüedad: 18 años, 9 meses
Puntos: 0
no me funciona, te pego mi codigo para ver si ves el fallo:

[pagina ppal]

...</head>
<frameset rows="100%,*" framespacing="0">
<frameset cols="50%,50%" framespacing="0">
<frame name="hiddenFrame" src="ready.html">
<frame name="frame" src=" comunicacion.php" scrolling="auto">

</frameset>

<body>...
en ready.html estan los scripts entre ellos el siguiente:

...<script>
function novo(){
window.confirm("Muestrate");
return 1;
}...
Si en comunicacion.php pongo:

<script>
a = hiddenFrame.novo();
</script>

No me hace nada y el explorer me dice: 'hiddeFrame' no esta definido.
  #5 (permalink)  
Antiguo 24/08/2005, 05:44
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Holas Motoko

Esto no lo he probado, pero espero que te funcione:

<script>
a = top.hiddenFrame.novo();
</script>

Saludos,
  #6 (permalink)  
Antiguo 24/08/2005, 05:59
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola otra vez:

El sistema de frames no lo veo muy bien... veo 2 frameset y solo cierras uno. Y las páginas con frameset no llevan body...

con parent.hiddenFrame.novo(); tendría que funcionar... si hay 2 frameset (y los tienes bien, no creo que funcione lo que dice JavierB (¡Hola! )

Saludos

<offtopic>JavierB: ¿Qué tal las vacaciones?... te lo pasaste bien.</offtopic>
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #7 (permalink)  
Antiguo 24/08/2005, 09:14
 
Fecha de Ingreso: julio-2005
Mensajes: 90
Antigüedad: 18 años, 9 meses
Puntos: 0
caricatos, si te fijas tu post y el mio anterior a este estan proximos en el tiempo, aunque el mio salga despues me puse a escribirlo antes de ver el tuyo. Las cosas q dices q faltan es porque no puse el codigo completo, sino solo aquellas partes que crei que eran importantes para que la gente me entendiese.

La forma correcta y adecuada es la que me pusiste tu caricatos, desde el frame que no tiene el javascript hice la llamada como sigue:

javascript:parent.nombreframe.mifuncion();

y funciono bien, muchas gracias.

Ahora tengo otra duda, una vez que he llamado a la funcion, como puedo acceder desde el codio de la funcion, a los valores del form que estan en el frame desde el que llamo a la funcion, sin tener que pasarlos como parametros?
  #8 (permalink)  
Antiguo 24/08/2005, 10:49
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

Me alegro que te funcione. Para obtener los valores de un formulario (bueno, de sus campos). si están en la página en la que llamas a la función valdría con document.forms[nombreDelFormulario].campo.value pero si la llamada es parent.nombreDelFrame.tuFuncion(), la cosa se complica algo.

Si llamas a la función desde "hiddenFrame" y quieres los valores de "frame" creo que lo correcto sería: parent.frame.document.forms.tuFormulario.tuCampo.v alue

Pruébalo y nos lo comentas.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 14:24.