我有一个下拉列表“ddl_group”,后面跟着两个包含与第一个中所选项目相关的控件的标签。 ddl_group中的一项是教师,另一项是 student。默认情况下,我将两个div标签中的所有控件都设置为不可见。它们仅在ddl_group中选择与其相关的组时显示。
想象一下,我选择了ddl_group中的学生。接下来,div.stdInfo中的控件开始一个接一个地出现,以响应在div.stdInfo中对控件进行选择的用户。现在,用户可能想要从ddl_group中选择另一个组,即教师。因此,我需要再次使div.stdInfo中的所有控件都不可见,并在div.teacherInfo中创建可见控件。
是否可以在一个地方的某个标签(例如div标签)内隐藏或显示所有asp.net控件,而不是单独设置它们?
答案 0 :(得分:1)
您可以将div放入
然后你可以成功
pnlName.Visible = TRUE;或pnlName.Visible = false;
什么时候你想要或 你可以使用Div与
RUNAT = “服务器”
属性,以便在代码页中可以访问它 他们可以像
那样做divname.Visible = TRUE; divname.Visible = FALSE;
答案 1 :(得分:1)
您可以使用ASP.NET Place holder或ASP.NET Panel控件来实现这些目的。
答案 2 :(得分:1)
如果您向runat
添加divs
标记和ID标记,则可以通过服务器端代码访问它们。我更喜欢这种方式,因为我根本不必弄乱我的CSS。
e.g。
<强>标记:强>
<div class='teacherinfo' ID='teacherDiv' runat='server'>
.
.
.
.
.
</div>
代码背后:
teacherDiv.Visible = false;
提醒一词,使服务器端控件不可见意味着它不会出现在生成的html文档中。因此,如果您尝试使用javascript document.getElementById("<%= teacherDiv.ClientId %>")
找到它,则会收到错误。