如何隐藏或显示div

我在我的Page_Load上注册了这个

Page.ClientScript.RegisterStartupScript(this.GetType(), "clientscript", "document.getElementById('showdiv').style.visibility = 'hidden';", true); 

但它没有被隐藏……我的div如下所示

 

我究竟做错了什么?。 谢谢您的帮助

我强烈建议使用JavaScript进行这种简单的客户端操作(show / hode行控件等),或者更容易使用jQuery这样的.js库。 在应用程序中包含jQuery脚本之后,只需在页面完成初始化后隐藏该DIV即可。

如果您已经有一个脚本部分,请将此脚本部分包含在页面顶部或引用的.js文件中:

  

关于此方法的jQuery API文档:
http://api.jquery.com/hide/

为什么不使用asp:Panel服务器标签?

前端:

  ...  

后端:

 ShowDiv.Visible = false; 

Panel控件将在运行时呈现为

。 这对我来说比注册客户端脚本更清晰。

HTML

  

C#

 div1.Visible=false; 

我认为这会奏效……

你有2个选择

1 – 将“runat = server”属性添加到div中,然后从代码后面访问它并使可见性为false或添加样式以使其不可见。

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

2 – 添加javascript函数来隐藏它,你可以使用jquery来做它。

使用Javascript:

 $(document).ready(function(){ $(".slidingDiv").hide(); $(".show_hide").show(); $('.show_hide').click(function(){ $(".slidingDiv").slideToggle(); }); }); 

HTML

 Show/hide 
Fill this space with really interesting content. hide

CSS

 .slidingDiv { height:300px; background-color: #99CCFF; padding:20px; margin-top:10px; border-bottom:5px solid #3399FF; } .show_hide { display:none; } 

我来到这里寻找解决方案,最后将“runat = server”添加到我的div然后将其隐藏在代码隐藏中

myDivID.Visible = false;

我认为这是另一个加载顺序问题。

您的脚本在加载后立即运行。 如果它试图隐藏的页面元素在脚本运行时没有加载到DOM中,那么就没有什么可隐藏的了。 我相信注册的脚本都会在HTML内容之前进入页面顶部,所以这将永远发生。

要使其工作,您必须将其放在加载事件侦听器中。 请参阅: 在页面加载时运行javascript代码,而不使用onload标记

也就是说,既然你试图隐藏页面元素,没有条件,你可能会很高兴在服务器端关闭这个页面元素,或者通过在CSS隐藏的元素中添加一个类,或者直接从服务器代码处理其样式/可见性。

如果假设Div是否可见会有一些条件,那么在客户端javascript中完成所有操作可能会更好,因此您不必为了控制可见性而进行服务器访问。

我们创建链接调用javascript

  

Mot de passe oublié

显示和隐藏的div

 

并在javascript中添加:

  

并在CSS中: