如何根据某些条件隐藏特定的jqueryui选项卡?

时间:2014-02-06 05:13:25

标签: c# javascript jquery asp.net

我正在开发一个应用程序,其中特定用户看不到选定的选项卡。我的代码是

<div id="tabs">
      <ul>
           <li><a href="#divLogTickets">Log Tickets</a></li>
            <li><a href="#divOpenTickets">Open Tickets</a></li>
      </ul>
      <div id="divLogTickets" runat="server" style="padding: 25px;">

      </div>
</div>

if (getUserRole(Convert.ToString(Session["UserId"])) == "HR")
{
   //hide tab
}

如何根据特定用户角色隐藏特定选项卡。

3 个答案:

答案 0 :(得分:1)

您可以将idrunat="server"属性添加到要从后面的代码中访问的元素,并在后面的代码中设置.Visible属性。

例如,如果你想隐藏Log Tickets标签,那么这就是你的aspx代码应该是什么样子:

<div id="tabs">
      <ul>
           <li id="liLogTickets" runat="server"><a href="#divLogTickets">Log Tickets</a></li>
           <li><a href="#divOpenTickets">Open Tickets</a></li>
      </ul>
      <div id="divLogTickets" runat="server" style="padding: 25px;">

      </div>
</div>

然后在代码中设置liLogTicketsdivLogTickets的可见性:

if (getUserRole(Convert.ToString(Session["UserId"])) == "HR")
{
    //hide Log Tickets tab
    liLogTickets.Visible = false;
    divLogTickets.Visible = false;
}

答案 1 :(得分:0)

您可以使用$(selector).hide();方法hide

例如:

if (getUserRole(Convert.ToString(Session["UserId"])) == "HR")
{
   //hide tab
   $('#userId').hide();
}

答案 2 :(得分:0)

在验证之后,即您已经验证了要隐藏它的特定用户(正如您在代码中提到的那样),您可以使用hide()函数隐藏该特定元素。

$('#Id_of_Element').hide();