0

我想检查我的菜单是否包含菜单项“管理员”。

Admin 是父菜单项的名称。当用户登录时,他们可以看到管理菜单。

我的菜单 css 路径如下所示:

div.toppane div.logopane div.menupane ul.sf-menu li a

如果是这样,那么我想显示以下链接

<a href="/en-us/aboutus/abgroup.aspx?ctl=logoff" id="Logoff" />Logoff</a>

但如果“管理员”不存在,那么我需要显示此链接:

<a href="/en-us/aboutus/abgroup.aspx?ctl=login" id="Login" />Login</a>
4

2 回答 2

1

您的问题中缺少 DOM 结构!:(,所以我会试一试...

if ($('div.toppane div.logopane div.menupane ul.sf-menu')
    .has('ul.sf-menu li a')){
     $('#Logoff').show();
}
else{
     $('#Login').show();
}

或者 Admin 的东西是什么样子的,只要把它放在has...


更新:

“admin”是一个字符串值。所以假设我需要检查菜单中的值?

使用is+ :has+ :containes

if ($('div.toppane div.logopane div.menupane ul.sf-menu')
     .is(':has(a:contains(Admnin))')) {`
于 2012-05-02T10:39:15.253 回答
-1

您不应该使用 jQuery 来确定导航项,而应该在服务器端完成。如果我禁用 Javascript 会发生什么?最好有一个 IF 语句检查是否设置了“管理员”并根据需要更改链接。

于 2012-05-02T10:47:13.197 回答