2011-10-27 54 views
0

情景:具有頂部,左側和側邊欄的主站頁面的ASP.NET站點。頁面主體有時需要顯示來自其他URL的數據。例如,主頁面上會有一個名爲「顯示城市」的超鏈接。點擊此鏈接將打開一個URL爲「https://yourcompany/cities.aspx」的新窗口。此ASPX未鏈接到ASP.NET網站。如何在ASP.NET中創建框架(以在ASP.NET站點中顯示其他URL)

我想改變它在ASP.NET網站本身中顯示「https://yourcompany/cities.aspx」。因此,當用戶點擊「顯示城市」時,該網站將顯示標題,頂部,左側,正文將顯示cities.aspx顯示的任何結果。

什麼是最好的方法和建議?是否需要創建框架?在這方面需要一些幫助。

關於此問題的更多信息: MasterPage幾乎沒有超鏈接或按鈕,如顯示城市,顯示經銷商等。點擊ShowCities應顯示yourcompany/cities.aspx(外部網站),同樣「ShowDealers」點擊應顯示「mycompany」。 COM/ShowDealers.aspx「;所以每個鏈接都有自己獨特的點擊和結果,但結果應該顯示在我們的網站內,以便用戶不應該感覺到他被重定向到某個地方。此外,顯示結果的區域/邊界不應顯示該外部網站的網址。

回答

1

標記:

<iframe id="yourid" runat="server" src="http://initialsource.aspx"> </iframe> 

而且背後的代碼...

yourid.src="http://to-the-new-site.aspx"; 

,我認爲它應該工作。

UPDATE - 提供js版:

如果你像這樣定義一個JavaScript函數:

function setFrameSrc(newSrc) 
{ 
    document.getElementyById('yourid').src=newSrc; 
    //note: 'yourid' is the iframe id from my initial example. 
} 

,你有你的鏈接是這樣的:

function setFrameSrc(newSrc) 
{ 
    document.getElementById('yourid').src=newSrc; 
    //note: 'yourid' is the iframe id from my initial example. 
} 

會工作。 Test here.

+0

我在母版頁上有幾個鏈接都是外部頁面。所有這些應該顯示在框架內。考慮到上述情況,請告訴我在哪裏納入上述變化?謝謝。 – Anirudh

+0

@Anirudh我認爲交互是這樣的:用戶點擊一個鏈接,顯示「顯示網站」,顯示不同網站的鏈接列表(例如,可能填充在中繼器中)。然後通過點擊中繼器內的特定鏈接,您可以在iframe中顯示該網站的內容。確認是這種情況,我會提供一些指導。 – Icarus

+0

@Lusus:就是這樣。 MasterPage幾乎沒有超鏈接或按鈕,如Show Cities,Show Dealers等。單擊ShowCities應顯示http:// yourcompany/cities。aspx(外部網站)和類似的「ShowDealers」點擊應顯示「http://mycompany.com/ShowDealers.aspx」。所以每個鏈接都有自己獨特的點擊和結果,但結果應該顯示在我們的網站內,以便用戶不應該感覺到他被重定向到某個地方。另外,顯示結果的區域/邊界不應顯示該外部網站的URL。 – Anirudh

1

取決於來源和目標受衆的來源。您可以在主頁面內創建cities.aspx頁面,並簡單地將其主體設置爲以目標頁面爲源的IFrame。

工作得很好,但一些移動設備不支持i​​Frame。

+0

我在母版頁上有幾個鏈接都是外部頁面。所有這些應該顯示在框架內。我應該創建一個名爲'ShowContent.aspx'的ASPX頁面嗎?請給我一些關於在主頁和其他地方需要修改什麼的步驟。 – Anirudh

相關問題