2013-10-08 345 views
0

我有一個頁面上有一個iFrame。 在框架中的頁面上,我有一個按鈕。打開一個頁面到新窗口/從iframe的標籤

我想要的是,如果用戶單擊按鈕,另一個頁面會在它自己的新窗口或選項卡中打開。這個功能是向用戶顯示一個打印友好的頁面。

我該怎麼做?

這是怎麼了我現在就來試試吧:

Dim sb2 As New StringBuilder 
sb2.Append("window.open('") 
sb2.Append(sb.ToString) 
sb2.Append("','NewPFWindow','menubar=1,toolbar=1,scrollbars=1,resizable=1,sandbox=""allow-same-origin allow-forms""')") 

ClientScript.RegisterClientScriptBlock(Me.GetType, "si2", sb2.ToString, True) 

某人持有的頁面,如「mypage.aspx」

另一種選擇是調整的iFrame所以整個頁面將適合。這是可能的代碼隱藏?

rg。 埃裏克

回答

0

找到它。

顯然,Chrome使用了未公開的功能。

是試圖把新頁面在自己的窗口或標籤的框架,需要在一個名爲沙箱屬性多了一種選擇「允許-彈出」。

這不是記錄的w3schools.com網站上。

所以加入這個沙箱屬性,讓瀏覽器中創建新的窗口/標籤。

+1

[請不要鏈接到或使用w3schools。這是一個很糟糕的參考,充滿了不正確的信息,有時甚至會導致安全漏洞。](http:// w3fools。com) – ThiefMaster

+0

由於我不想完全重寫你的問題和答案,這個問題一般適用於HTML而不適用於ASP.net;我在這裏創建了一個新的問答:http://stackoverflow.com/a/21236617/900747 @ThiefMaster,絕對是+1。雖然我仍然使用它們來檢查各種新的HTML5功能的語法,因爲它們每次都在Google中名列前茅。 –

0

只需提供一個target尚未命名您的網站上還沒有,大多數人會用_blank

<a href="desiredLocationUrl...." target="_blank"> link text </a> 

,或者如果你想綁的是另一個點擊事件別處:

window.open('desiredLocationUrl....', "_blank"); 

順便說一句。這個鏈接是否在iframe內並不重要;)

+0

添加的代碼來創建頁面。 – Eric

+0

@Eric你的代碼似乎就在這裏需要什麼,發生了什麼如果你現在點擊按鈕?有什麼?沒有?我認爲它實際上應該是正確的代碼,也許是tr y用'_blank''切換''NewPFWindow'' – DrCopyPaste

+0

嗨,當我點擊按鈕時,沒有任何反應。我認爲彈出式窗口攔截器阻止了它。並且由於瀏覽器不顯示警告,因此您可以將網站添加到允許使用彈出窗口的網站列表中。也許這是因爲我在調試模式下觀看VS中的站點。 – Eric

相關問題