2009-02-18 185 views
1

客戶端有一個帶有iframe的asp頁面。 Iframe在asp經典頁面中加載一個asp.net頁面。經典ASP,ASP.NET,IFrames和response.redirect問題

ASP.NET頁面負責連接到一個webservice,顯示一些數據,然後當用戶點擊一個按鈕時,它會做一個response.redirect另一個經典的asp頁面。

由於asp.net頁面位於iframe中,所以在理想情況下它應該接管整個頁面時,asp頁面會在iframe內部加載。

我已經嘗試在最終的asp頁面中放入javascript來打開iframe,但它似乎並沒有觸發。

我試過asp.net頁面上做的OnClientClick(),並使用下面的JavaScript

top.location使其脫離iframe的= self.location.href

但自那臺它似乎刷新頁面,突破了iframe,但不會觸發服務器端的onclick事件,然後執行後端計算並執行response.redirect。

關於如何確保最終的asp頁面不會出現在iframe中並突然出現的任何想法?

回答

2

這聽起來像你需要返回控制到你的父窗口。你可以通過javascript來做到這一點:

function returnControl(returnPage). 
{ 

    parent.window.location.href = returnPage; 

} 
0

你可以多做一件事(我已經實現了)。首先調用onClick事件的後端計算,然後將用戶重定向到另一個asp.net頁面,該頁面可以在頁面加載時使用JavaScript函數在父窗口中加載生成的頁面。

2

我剛剛在主asp頁面的鏈接中使用了「target = _top」。奇蹟般有效。