如何从aspx页面隐藏用户控件div?

时间:2015-06-12 13:23:29

标签: javascript c#

在我的用户控件中,我有以下控件:

.ascx Page:

<div id="div1" runat="server">
     <asp:Label ID="Lblname" Text="Name" runat="server"></asp:Label>
</div>
<div id="div2" runat="server">
    <asp:TextBox ID="txtvalue" runat="server"></asp:TextBox>
</div>
<div id="div3" runat="server">
    <asp:Button ID="btnClick" runat="server" Text="Click" />
</div>

aspx页面 如何隐藏div1,div2&amp; div3使用c#或javascript

3 个答案:

答案 0 :(得分:1)

不需要javascript。你可以很容易地把一个 id="YourId"runat="server"。您还可以添加Visible=False作为默认值(或者如果您希望默认情况下显示它)。在.cs页面中,您可以根据需要定义和更改Visible值。因此,我们假设您希望它仅作为管理员用户的默认值显示,并且如果用户是具有true / false值(位值)的管理员,则检入数据库。然后在PageLoad()中你可以执行这样的检查:

if(LoggedUser.IsAdmin==true)
{
div1.Visible=true;
}
else 
{
div1.Visible=false;
}

答案 1 :(得分:0)

您可以从用户控件和母版页中呈现html。

如果你想隐藏你的元素,那么只需使用这个

  div1.Style.Add("display", "none");

一件重要的事情:你需要指定clientidmode =&#34;静态&#34;在您的div上,因为当您的html渲染时,服务器控件的ID会发生变化。

已更新:在C#中,您需要执行此操作

a-1.001.txt
a-2.234.txt
a-3.765.txt

答案 2 :(得分:0)

C#实施

由于runat设置为server,您应该能够在代码隐藏中按ID引用您的div。

因此,假设您希望在页面加载时发生这种情况,请在Page_Load事件中添加:

div2.Visible = false;