2009-06-05 24 views
46

私のシナリオでは、データベースの処理を行うページのiframeセクション内にボタンがあります。メインフレームをiFrame内からリロードする方法

私が基本的に必要とするのは、iframe内のこのボタンが押されると、メインページのページリフレッシュを実行する手段です。

iframe内でトリガできるJavaScriptがうまくいけば、iframeを保持するメインウィンドウがリロードされます。

ありがとうございました。 トニー。

答えて

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

メインページを確認するためにwindow.topを使用する場合+1目標とされている。 – peirix

+0

これはIE6で動作しますか? – tonyf

+0

はい、扁桃腺... –

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

親のと子のiframeのドメインが、その場合には次を使用しようとすることができ、あなたはクロスウィンドウのセキュリティエラーになります異なってくる場合:

window.parent.location = document.referrer; 
2

我々は簡単に達成することができますiframe内のリンクにset target = "_ parent"を設定することで、目標を達成しました。ただ、次のデモのような

は示しています

<!--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

があなたのトップフレームにallFrame変数を定義する:チェックこの機能を

var allFrame=1 

と、すべてのフレームに

if(top.allFrame === undefined) 
{ 
    window.parent.location = "your website top frame"; 
} 
0
window.opener.top.location.reload(); 
関連する問題