Foros del Web » Programando para Internet » Jquery »

Pasarlo a JQuery

Estas en el tema de Pasarlo a JQuery en el foro de Jquery en Foros del Web. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original function error ( n ) {     parent. frm + n. innerHTML = "<strong>ERROR con la imagen</strong>" ...
  #1 (permalink)  
Antiguo 20/04/2011, 08:31
 
Fecha de Ingreso: noviembre-2009
Mensajes: 846
Antigüedad: 10 años, 2 meses
Puntos: 34
Pasarlo a JQuery

Código Javascript:
Ver original
  1. function error(n) {
  2.     parent.frm+n.innerHTML = "<strong>ERROR con la imagen</strong>";
  3. }
Código PHP:
Ver original
  1. if(condicion) {}
  2. else {echo '<script>error('.$_POST['num'].')</script>';}

Este codigo esta en un iframe desntro de un pagina... no funciona. Que veis mal?
Y como lo podria pasar a JQuery (no se como seleccionar algo que este en parent).

Muchas gracias
  #2 (permalink)  
Antiguo 20/04/2011, 09:11
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 17 años, 11 meses
Puntos: 772
Hola, mariomon17

Muevo tu tema al foro de Frameworks y Plugins Javascript desde Javascript.

Saludos,
  #3 (permalink)  
Antiguo 20/04/2011, 13:26
 
Fecha de Ingreso: junio-2008
Ubicación: Capital Federal xD
Mensajes: 1.208
Antigüedad: 11 años, 6 meses
Puntos: 35
Respuesta: Pasarlo a JQuery

Bueno siempre tuve problemas con los iframes.
Supongamos que posees varios elementos frm(en la pagina parent, no dentro del iframe), para diferenciarlos, identificalos con un id unico para cada uno, id="frm1", id="frm2", etc

La función, definida dentro del iframe, recibirá el numero que se concatenará con un string para formar el id de un elemento frm
Código Javascript:
Ver original
  1. function error(n) {
  2.     $('#frm'+n , window.parent).html("<strong>ERROR con la imagen</strong>");
  3. }
En el selector jquery le indicas como 1º argumento el id del elemento, el 2º argumento es el entorno donde deseas aplicarlo(window.parent), si no se lo especificas intentará buscarlo dentro del documento del iframe mismo.
__________________
I am Doyle please insert code.

Última edición por doylelives; 20/04/2011 a las 16:00
  #4 (permalink)  
Antiguo 20/04/2011, 16:24
 
Fecha de Ingreso: noviembre-2009
Mensajes: 846
Antigüedad: 10 años, 2 meses
Puntos: 34
Respuesta: Pasarlo a JQuery

Graciiiiias, muchas gracias
Voy a probarlo, si tengo mas dudas te comento.

Un saludo
  #5 (permalink)  
Antiguo 21/04/2011, 16:08
 
Fecha de Ingreso: noviembre-2009
Mensajes: 846
Antigüedad: 10 años, 2 meses
Puntos: 34
Respuesta: Pasarlo a JQuery

Vaya... no me funciona


Esto es la pagina principal:
Código HTML:
Ver original
  1. <div id="frm1">
  2.  ...
  3. </div>

Este es codigo que esta en el iframe:
Código Javascript:
Ver original
  1. <script>
  2. function error(n) {
  3.     $("#frm"+n,window.parent).html("<strong>ERROR con la imagen</strong>");
  4. }
  5. </script>
  6. <script>error(1)</script>

Desde Chrome no me da ningun error.
Sabeis como puedo seleccionarlo? Gracias

Última edición por mariomon17; 22/04/2011 a las 09:00
  #6 (permalink)  
Antiguo 23/04/2011, 14:52
 
Fecha de Ingreso: noviembre-2009
Mensajes: 846
Antigüedad: 10 años, 2 meses
Puntos: 34
[SOLUCIONADO] Pasarlo a JQuery

Visto que los foros estan mas vacios que nunca, lo solucione yo solito.

Habia que agregar window.parent.document enel context de $, nada mas.

Esto es la pagina principal:
Código HTML:
Ver original
  1. <div id="frm1">
  2.  ...
  3. </div>

Este es codigo que esta en el iframe:
Código Javascript:
Ver original
  1. <script>
  2. function error(n) {
  3.     $("#frm"+n,window.parent.document).html("<strong>ERROR con la imagen</strong>");
  4. }
  5. </script>
  6. <script>error(1)</script>

Etiquetas: javascript
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 10:23.