2008-10-08 63 views
0

我有一個網頁(比如說www.example.com/a.asp)..我在這個頁面上有一個iframe,它從一個不同的網站(www.example.net/b.asp )...這個b.asp向用戶提出了幾個問題,結果發佈到我的網站(www.example.com/c.asp)的c.asp中。此頁面(www.example.com/c.asp)被加載到iframe中。有什麼方法可以讓我重新加載整個網頁,並在獲得www.example.net的響應時重定向到另一個wb頁面。對不起,如果這個問題很混亂,任何疑問請讓我知道。iframes and redirection

回答

0

如上所述(可能計算時代的事件觸發的號碼後),您可以使用「_top」目標的形式,或者你可以在結果頁面上使用一些JavaScript來檢查並查看它是否是「頂部」頁面。所有事情都是平等的,最好避免使用JavaScript,因爲如果客戶端禁用了腳本,它將無法工作。

0

如果我理解正確,我想你可能可以將帖子的目標設置爲c.asp爲「_top」。這應該重新加載整個頁面,讓你離開iframe。你的c.asp頁面將不得不處理你需要的重定向。

或者,c.asp頁面需要執行的重定向可能能夠自己定位「_top」,以防您無法更改發佈數據的頁面。

+0

謝謝,但我無法控制www.abc.com上的頁面。我想使用response.redirect而不是任何javascript函數。 – Shoban 2008-10-08 09:44:35

+0

啊好的。我不是很熟悉的asp,所以我沒有意識到使用response.redirect – 2008-10-08 09:46:54

0

姆姆,不知道我是否正確。你真的認爲當你從abc.com而不是你自己的網站得到迴應嗎?

在HTML表單標籤似乎有一個目標屬性提交數據後加載到指定的(例如,_top)目標的響應:

http://de.selfhtml.org/html/referenz/attribute.htm#form(德國)

不知道如果我真的回答你的問題。我有嗎?

乾杯 馬蒂亞斯

0

如果你有超過加載到框架中的資源的控制權,你不能重定向使用HTTP,所以你堅持使用JavaScript。

鑑於相同的原產地策略,我認爲您可以做的最好的是確定何時將新文檔加載到iframe中。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
    "http://www.w3.org/TR/html4/loose.dtd"> 
<title>test of iframe</title> 
<iframe width="500" height="400" src="http://example.net/"> 
    <p><a href="http://example.net/">See The Example Site</a></p> 
</iframe> 
<script type="text/javascript"> 
     window.onload = function() { 
       document.getElementsByTagName('iframe')[0].onload = function() { 
         window.alert('Document loaded in frame'); 
       } 
     } 
</script>

然後,您可以設置window.location的