0

次のような動的に生成されたメニュー(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です。

URLが設定されていない親アイテムのクリックアクションを無効にしたいので、誰かがページをクリックしてもページは更新されません。

方法はありますか?

4

3 に答える 3

0

menuitem.NavigateUrl = "javascript :;";

于 2012-12-13T15:09:23.497 に答える
0

@Manibhadraに感謝します(これは親アイテムと子アイテムには十分です)

window.onload = function ()
{
    var menuTable = document.getElementById("<%=NavigationMenu.ClientID%>");
    var menuLinks = menuTable.getElementsByTagName("a");
    for (i = 0; i < menuLinks.length; i++)
    {
        menuLinks[i].onclick = function () {  }
    }
}
于 2012-12-14T10:49:53.153 に答える
0
if (MenuItem.NavigateUrl == "")
{
 MenuItem.Selectable = false;
}
于 2013-02-26T09:56:36.020 に答える