2016-10-19 3 views
-1

を非表示にします。ユーザ名が無効である場合、これは私の初めてのPerl以外のものに多くをやっているとVBので、私と一緒に負担してくださいリンク

私は一致する必要がある2つのフィールドを比較することができるよ、とそうでない場合は、その後、私は完全にHTMLリンクを非表示にする必要があります。これはどう書かれますか?

これは、最初のユーザーID

($("#trid").val());    
    ($("#pxuserid").text()); 
    var test = $("#pxuserid").text().indexOf("-"); 
    var username = $("#pxuserid").text().substring(test + 1); 
    (username); 

をつかむこれは、第二のユーザーIDをつかみ、すべて大文字から小文字に変更します。

($("[name=vsvadm]").val()); 
    var str = $("[name=vsvadm]").text("checked", true).val().toLowerCase(); 
    (str); 

これらは私が/非表示

<div class="pxcontent" id="sarea"> 

    <div class="pxvtab" id="pxform"> 

     <div class="pxvtablinks"> 



     <a href="javascript:act();" rel="#page2">Directories</a> 
     <a href="javascript:act();" rel="#page5">Accounting</a> 
     <a href="javascript:act();" rel="#page6">Advanced</a> 
     <a href="javascript:act();" rel="#page7">Security</a> 

を表示するために必要なもの、私はUSERID1が等しいuserid2をしていない場合、ページ5、6、および7を隠す」と言うためのスクリプトを取得しようとしているされていますしかし、ページ2のみを表示する、そうでなければ続ける " うまくいけば、私は誰とも混乱させずに誰かが助けてくれることを願っています!

+2

これにより、ユーザは何が起こっているかを見ることができ、クライアント上で、サーバー側で行われるべきである(ただし、それを難読化可能性があります)、ユーザーがアクセスできるサイトに保持されている値と照合しているようです。 –

+0

はまた、FYI彼らは値を取得する。すなわち、あなたの文を次のように、何もしないし、それを捨てる:(。$( "#1 TRID")のvalを()) ';'、 '($( "#のpxuserid") .text()); '、'。(ユーザー名); '、'($( "[名= vsvadm]")のval()); '、'(STR); ' – Siguza

答えて

1

すべて<a>クラスをタグ付け:これは本当に、サーバー上で処理する必要があります:その後、

<a href="javascript:act();" class="nav-links" rel="#page2">Directories</a> 
<a href="javascript:act();" class="nav-links" rel="#page5">Accounting</a> 
<a href="javascript:act();" class="nav-links" rel="#page6">Advanced</a> 
<a href="javascript:act();" class="nav-links" rel="#page7">Security</a> 

そして、条件をチェックして、それを隠す:

if (userid1 != userid2) 
    $(".nav-links").hide(); 

注意をクライアント側よりも優先されます。経験豊富なユーザー(そしてほとんどすべてのユーザー)は、開発ツールを使用して、非表示の要素にアクセスできます。 strusernameを想定すると、

+0

が追加されます簡単なコマンドがあります5,6,7ページのみのクラスは? – Titanfox

+0

@CharlesZ私はそれがサーバー側を使ってこれを処理する方が良いと思います。しかし、ええ。 –

0

を比較したいものです。..

if(str !== username) $("a").hide(); 

これは、あなたの質問に述べたように、すべてのリンクを隠しますが、それらを見てからユーザーを防ぐために使用すべきではありません。あなたのリンクが安全である必要があるならば、認証はサーバ側で行われるべきです。

はまた、あなたがPerensさんに包まれたすべての自立文を取り除くことができます。それらはどんな目的にも役立たない。

-1

は、あなたがリンクの上に文字列と、ループを比較する必要が

var username1 = 'username1' 
var username2 = 'username2' 

// Do compare 
if (username1 !== username2) { 
    // Loop over the links 
    $.each($('.pxvtablinks a'), function() { 
     // If it doesn't have a rel attribute equal to '#page2'... 
     if ($(this).attr('rel') !== '#page2') { 
      // hide it. 
      $(this).hide() 
     } 
    }) 
} 

例:https://codepen.io/mark_c/pen/mAQwpE

関連する問題