C# 按钮切换div可见属性

C# 按钮切换div可见属性,c#,asp.net,C#,Asp.net,我正在开发一个web应用程序,它不需要实际登录数据库,而是需要在访问菜单之前验证数据。我正在使用显示验证失败的错误消息。验证在代码隐藏中进行。我希望事件能够将div的visibility属性更改为隐藏或可见,但在重新加载页面时失败,因此似乎没有进行任何更改 简言之: <div runat="server" id="Errmsg" style="visibility:false"> </div> <div id="otherDiv"> <asp:Te

我正在开发一个web应用程序,它不需要实际登录数据库,而是需要在访问菜单之前验证数据。我正在使用
显示验证失败的错误消息。验证在代码隐藏中进行。我希望事件能够将div的visibility属性更改为隐藏或可见,但在重新加载页面时失败,因此似乎没有进行任何更改

简言之:

<div runat="server" id="Errmsg" style="visibility:false">
</div>
<div id="otherDiv">
   <asp:TextBox runat="server" ID="IdDepTxt"></asp:TextBox>(just as an example)
   <asp:Button ID="AccessBtn"  runat="server" OnClick="AcessBtn_Click" Text="ACCESS"  CausesValidation="False" UseSubmitBehavior="False"></asp:Button>
</div>

首先,
false
不是该属性的有效值。您可能正在查找
隐藏的

style="visibility: hidden;"
有效值如下所示:

可见性:可见|隐藏|折叠|初始|继承

其次,您正在混合ASP.NET和CSS可见性功能。你应该选择其中一个,而不是两个。否则它们会相互冲突,你可能看不到你期望看到的东西

CSS:

ASP.NET:

<div runat="server" id="Errmsg" Visible="False">
或者,也可以使用而不是div。它们就像div一样充当容器,但是当涉及到ASP.NET功能时,在代码中使用它们会更容易一些

<asp:Panel ID="Errmsg" runat="server" Visible="False"></asp:Panel>


您应该在标记中使用
visible
属性,而不是
visibility
。作为反馈,我犯了一个错误,认为这些功能是等效的。现在我选择了一个侧面(星球大战双关语?),它工作得很完美,非常感谢。(顺便说一句,选择了服务器端,visibility=false是一个类型o,我在css级别应用了正确的样式:D),这是完全可以理解的。幸运的是,它很容易测试!不客气。很高兴我能帮忙!
Errmsg.Style.Add("visibility", "hidden");
<div runat="server" id="Errmsg" Visible="False">
Errmsg.Visible = false;
<asp:Panel ID="Errmsg" runat="server" Visible="False"></asp:Panel>