2009-06-05 30 views
46

Dentro de mi escenario, tengo un botón dentro de una sección de iframe de mi página que realiza algún procesamiento de la base de datos.Cómo recargar la página principal desde un iFrame

Lo que básicamente necesito es un medio para realizar una actualización de página de la página principal, cuando se presiona este botón dentro del iframe.

Agradecería el javascript que puedo activar dentro del iframe, que volverá a cargar la ventana principal que contiene el iframe.

Gracias. Tony.

Respuesta

98
window.top.location.reload(); 
+2

+1 para usar window.top para asegurarse de que la página principal sea siendo el blanco – peirix

+0

funciona con IE6? – tonyf

+0

Sí, amígdalas ... –

8
window.parent.location.reload(); 
8

Si dominios iframe niño y el padre será diferente obtendrá error de seguridad en ventanas múltiples, en ese caso se puede tratar de utilizar siguiente:

window.parent.location = document.referrer; 
2

Podemos lograr fácilmente el objetivo enfrentado estableciendo target = "_ parent" en los Links dentro del iframe.

Al igual que la siguiente demostración muestra:

<!--ParentPage.htm--> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 


<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title></title> 
</head> 
<body> 
Parent Page 
<iframe src="FramePage.htm"></iframe> 
</body> 
</html> 


<!--FramePage.htm--> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 


<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title></title> 
</head> 
<body> 
<a href="http://www.g.cn" target="_parent">hello</a> 
</body> 
</html> 
0

definen allFrame variable sobre el marco superior:

var allFrame=1 

y en todos los marcos de comprobar esta función

if(top.allFrame === undefined) 
{ 
    window.parent.location = "your website top frame"; 
} 
0
window.opener.top.location.reload(); 
Cuestiones relacionadas