2011-09-05 2 views

답변

11

ASP.NET을 사용하여이 작업을 수행 할 수 없습니다. 서버 쪽의 ASP.NET은 들어오는 요청을 리디렉션 할 수 있으며 부모 프레임에 대해 알 수 없습니다.

하지만이 같은 서버에서 자바 스크립트를 호출 할 수있는 서버 측 상태에서 상위 프레임을 재 지정하려는 경우 :

protected void Page_Load(object sender, EventArgs e) { 
    ClientScriptManager.RegisterClientScriptBlock(this.GetType(), 
     "RedirectScript", "window.parent.location = 'http://yoursite.com'", true); 
} 

물론 당신이 간단한 자바 스크립트 window.parent.location을 사용할 수 있습니다 = 'HTTP : //yoursite.com '클라이언트쪽에 있습니다.

+1

주 프레임 부모 프레임 문서의 도메인이 오류는 대부분의 브라우저에서 발생되는 액세스 거부를 피하기 위해 일치해야 함 . – Chris

+0

부모님이 프레임에 다른 도메인이 있다면? – Kiquenet

1
Response.Clear(); 
Header.Controls.Add(new LiteralControl(@" 
<script type=""text/javascript""> 
top.location = ""/Logout.aspx""; 
parent.location = ""/Logout.aspx""; 
</script> 
")); 
5

방금 ​​다음 코드를 성공으로 사용했습니다. 그것도 X-Frame-Options SAMEORIGIN을 무시하고 iframe에 다른 한 도메인에서 리디렉션을 허용합니다

string url = "https://siteurl.com"; 
Response.Write("<script>top.location='"+url+"';parent.location='"+url+"';</script>");