1

Web サイトに jquery ボタンがありますが、これらのボタンの一部はすべてのユーザーがクリックできるようにする必要がないため、アクセス許可が必要です。

button1_click()
some ajaxcalls

button2_click()
some other ajax calls

button3_click()
another calls

管理者はこのイベントを呼び出すことができますが、単純なユーザーはボタン3を呼び出すだけでよいので、
どのようなアプローチが必要ですか?
-次のような別の ajax 呼び出しを使用してすべてのボタンを制御する必要がありますか。

button1_click()
    an ajax call (permission.aspx) read session,admin or not,return true or false
    if(true)    
    {
      someajaxcall()
    }

-または、セッションに応じてボタンを非表示または表示する必要がありますか? しかし、どうすればそれができるのかわかりません。
jqgrid asp.netコンポーネントを使用しているため、グリッドにはカスタムボタンがありますが、ボタンにはIDがないため、サーバー側からアクセスできず、ボタンに表示または無効のプロパティがありません。
私はasp.netとjqueryを使用しています

4

2 に答える 2

1

通常、ユーザーが使用できないボタンは表示したくないので、バックエンドでasp.netを使用しているため、ユーザーのアクセス許可を確認した後、ページの作成時にボタンを非表示にできます。

  btnOne.Visible = UserIsAdministrator; //you need to define thisvariable based on your own rules.

とにかくそれらを表示したい場合は、代わりにbtnOne.Enabled = UserIsAdministratorを実行できます。これにより、ボタンが表示されますが、必要に応じて無効にします。

于 2012-10-07T10:18:41.640 に答える
1

hiddenfieldユーザーの役割を保持するそのページで を使用できます。次に、DOM Ready()関数内でこれらのボタンを反復処理して、それらを有効/無効にします。ただし、誰かが隠しフィールドの値を手動で変更してボタンを有効にした場合に備えて、ajax 呼び出しが行われた後、サーバー側の役割も確認する必要があります。

于 2012-10-07T10:36:27.577 に答える