[英]Setting Button visibility to false code behind
我有大约100个按钮的列表。我在aspx页面中将visibile设置为false,然后在需要时尝试从后面的代码中将可见性设置为true。
我无法执行Button1.Visible = true; (其中Button1是按钮的ID,因为大约有100个按钮)
还有其他方法可以从后面的代码中将可见性设置为true吗? 我正在创建一个函数,该函数将接受按钮的ID,然后将可见性设置为true。
您可以像下面的代码一样使用“ Display:none”代替“ Visible = false”。
Button1.Style.Add("Display","none"); // for hide
Button1.Style.Add("Display","block"); // for show
这将从屏幕上隐藏您的按钮。
另外,如果您想在“设计”页面上执行操作,而不是在后面编写代码,则可以这样写:
<% if("your condition") {<%>
//enter your HTML part here
<%} else{%>
// HTML
<%}%>
使用此功能,您也可以从设计屏幕中隐藏按钮。
如果您的按钮位于带有runat="server"
某些父控件中,那么您可以在此从父控件的Controls
属性中获取控件集合。 然后,您可以检查控件是否为Button
,然后可以从后面的代码中设置Visible = "false"
。
示例:如果您在具有id="div1"
的div
有按钮,则可以像下面这样编码
foreach (var c in div1.Controls)
if (c is Button)
(c as Button).Visible = false;
我认为您可以从客户端处理它更好。您只需将一些类名和要显示或隐藏的按钮放在一起即可。 假设您的按钮类名称为“ myClassName”。 然后写一个样式如下图
.myClassName
{
display:none;
}
然后从按钮中删除visible = false属性,并放置类而不是它。 然后编写如下所示的javascript方法。
function ShowButtons()
{
$('.myClassName').show();
}
然后从后面的代码中调用下面的代码行。 它将从后面的代码中调用javascript方法。
Page.ClientScript.RegisterStartupScript(this.GetType(),"CallMyFunction","ShowButtons()",true);
试试这个。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.