【问题标题】:Open MenuItem URL in iFrame in ASP.Net在 ASP.Net 的 iFrame 中打开 MenuItem URL
【发布时间】:2012-12-13 09:36:55
【问题描述】:

我有一个动态生成的菜单 (C#),如下所示:

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 在 iF​​rame 中打开。那可能吗?如果我在目标参数中设置 iFrame 的 ID,则在 google chrome 中它可以正常工作,但在其他浏览器中则不行。有什么办法吗?

【问题讨论】:

  • 您的页面有实时版本吗?这与 javascript 打开页面的方式以及在 iframe 中发送它的方式有关。
  • Javascript?我没有任何javascript。我在 navigateUrl 参数中设置了 URL,在 target 参数中设置了 iframe 的 ID,两者都在后面的代码中。菜单是动态的。我没有现场版
  • 菜单是asp.net动态的,所以javascript也是菜单控件动态的。您使用 asp.net 菜单控件吗?你能在msdn上指出来吗?
  • 我给你看部分代码:MenuItem AdminLevel1 = new MenuItem("Administração", "Admin"); MenuItem AdminPedidosRegisto = new MenuItem("Pedidos de Registo", "AdminPedidosRegisto"); NavigationMenu.Items.Add(new MenuItem("Mensagens Recebidas", "AdminMensagensRecebidas", "", BaseURL + "./Admin/Messages.ascx", "ContainerIframe")); AdminPedidosRegisto.ChildItems.Add(new MenuItem("Em Curso", "AdminPedidosRegistoEmCurso", "", BaseURL + "./Admin/Pedidos.ascx", "ContainerIframe"));
  • 是的@Aristos,我使用 ASP 菜单控件

标签: c# asp.net url iframe menuitem


【解决方案1】:

使用 iframe 的 name 而不是 id 来归档它,以在 iframe 中加载页面。

例如:

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

您可以拥有相同的 id 和 name,但这里重要的是 name

这是一个有效的 iframe 测试:http://jsfiddle.net/7AMjy/3/

【讨论】:

  • 谢谢@Aristos。我会发布另一个问题,看看你是否可以帮助我
猜你喜欢
  • 1970-01-01
  • 2012-03-28
  • 2014-02-16
  • 2011-07-09
  • 2015-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-11
相关资源
最近更新 更多