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>

ただし、「admin」が存在しない場合は、次のリンクを表示する必要があります。

<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();
}

または、管理者がどのように見えるか、それを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を無効にするとどうなりますか?'admin'が設定されているかどうかをチェックし、必要に応じてリンクを変更するIFステートメントを用意することをお勧めします。

于 2012-05-02T10:47:13.197 に答える