我的页面上有一个div元素,我希望根据代码隐藏中的会话值显示/隐藏。我怎么能这样做?
答案 0 :(得分:161)
提供div "runat="server"
和id
,您可以在code behind
中引用它。
<div runat="server" id="theDiv">
在代码背后:
{
theDiv.Visible = false;
}
答案 1 :(得分:11)
如果您的div将runat设置为server,那么您肯定可以在myDiv.Visible = false
事件中执行Page_PreRender
。
如果您在使用会话时需要帮助,请查看msdn,这很容易。
答案 2 :(得分:8)
一种快速而简单的方法是将div设为
<div runat="server" id="MyDiv"></div>
并在您背后的代码上设置MyDiv.Visible=false
答案 3 :(得分:6)
试试这个。你的标记:
<div id="MyId" runat="server">some content</div>
..并在aspx.cs文件中:
protected void Page_Load(object sender, EventArgs e)
{
if (Session["someSessionVal"].ToString() == "some value")
{
MyId.Visible = true;
}
else
{
MyId.Visible = false;
}
}
答案 4 :(得分:5)
在Html中
<div id="AssignUniqueId" runat="server">.....BLAH......<div/>
在代码中
public void Page_Load(object source, Event Args e)
{
if(Session["Something"] == "ShowDiv")
AssignUniqueId.Visible = true;
else
AssignUniqueID.Visible = false;
}
答案 5 :(得分:2)
在你的div部分中使用runat =“server”...
<div runat="server" id="hideid">
点击按钮事件:
protected void btnSubmit_Click(object sender, EventArgs e)
{
hideid.Visible = false;
}
答案 6 :(得分:2)
给div&#34; runat =&#34;服务器&#34;和一个id,你可以在后面的代码中引用它。
<div runat="server" id="theDiv">
在代码背后:
{
theDiv.Visible = false;
}
在Designer.cs页面中:
protected global::System.Web.UI.HtmlControls.HtmlGenericControl theDiv;
答案 7 :(得分:1)
你也可以试试你的设计
<div <%=If(True = True, "style='display: none;'", "")%> >True</div>
<div <%=If(True = False, "style='display: none;'", "")%> >False</div>
<div <%=If(Session.Item("NameExist") IsNot Nothing, "style='display: none;'", "")%> >NameExist</div>
<div <%=If(Session.Item("NameNotExist") IsNot Nothing, "style='display: none;'", "")%> >NameNotExist</div>
输出html
<div style='display: none;' > True</div>
<div >False</div>
<div style='display: none;' >NameExist</div>
<div >NameNotExist</div>
答案 8 :(得分:0)
在代码背后:
{
yourDiv.Visible = false;
}
答案 9 :(得分:0)
上面的答案很好,但我会补充一点,以确保在designer.cs 文件中定义了div。将 div 添加到 .aspx 文件时,这并不总是发生。不知道为什么,但在这个论坛中有关于这个问题的线索。 例如:
protected global::System.Web.UI.HtmlControls.HtmlGenericControl theDiv;