2012-12-13 20 views
1

我有一個動態生成的菜單(C#),像這樣:打開菜單項URL中的iFrame在ASP.Net

MenuItem(string text, string value, string imageUrl, string navigateUrl, string target)

MenuItem AdminLevel1 = new MenuItem("Admin", "Admin"); MenuItem AdminPedidosRegisto = new MenuItem("Questions", "AdminQ");
NavigationMenu.Items.Add(new MenuItem("Messages Received", "AdminMessagesR", "", "./Admin/Messages.ascx", "ContainerIframe")); AdminPedidosRegisto.ChildItems.Add(new MenuItem("Pending", "AdminPending", "", "./Admin/Pedidos.ascx", "ContainerIframe"));

其中 'ContainerIframe' 是iframe的ID和「NavigationMenu '是(asp:Menu)的ID。

我希望navigateUrl中的URL在iFrame中打開。那可能嗎?如果我在目標參數中設置了iFrame的ID,在谷歌瀏覽器中它可以正常工作,但不能在其他瀏覽器中使用。有沒有辦法?

+1

你有什麼活您的網頁版本?這與JavaScript打開頁面的方式有關,以及如何將其發送到iframe中。 – Aristos

+0

Javascript?我沒有任何JavaScript。我在navigateUrl參數中設置了URL,並且在代碼後面設置了目標參數中的iframe ID。菜單是動態的。我沒有現場版本 – Hahn86

+0

菜單由asp.net動態顯示,所以javascript也是由菜單控制動態顯示的。你使用asp.net菜單控件嗎?你可以在msdn上指出它嗎? – Aristos

回答

0

使用iframe的name而不是id將其歸檔,以加載iframe中的頁面。

如:

<iframe src="whatever.htm" id="whateverid" name="ContainerIframe"></iframe> 

你可以有相同的ID和名稱,但這裏最重要的是name

這裏是一個iframe測試工作:http://jsfiddle.net/7AMjy/3/

+0

謝謝@Aristos。我會發布另一個問題,看看你能否幫助我 – Hahn86

相關問題