1

我的网站上有 jquery 按钮,但其中一些按钮不必每个用户都可以点击,所以必须有权限,所有按钮都会进行 ajax 调用,所以我如何控制这些按钮,例如,如果我有 3 个按钮,例如:

button1_click()
some ajaxcalls

button2_click()
some other ajax calls

button3_click()
another calls

所以管理员可以调用这个事件,但简单的用户只需要调用 button3
我需要什么样的方法?
- 我是否必须使用另一个 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.

ETC

如果您仍然想显示它们,则可以改为 btnOne.Enabled = UserIsAdministrator,这将显示按钮,但酌情禁用它们;

于 2012-10-07T10:18:41.640 回答
1

您可以hiddenfield在该页面上使用 a 来保存用户角色。然后在DOM Ready()函数内部遍历这些按钮以使它们启用/禁用。但是,您还应该在进行 ajax 调用后检查服务器端的角色,以防有人手动更改隐藏字段的值以启用按钮。

于 2012-10-07T10:36:27.577 回答