ASP.NET如何将隐藏字段和带有visibility属性的文本框呈现为false?

时间:2013-01-30 10:58:16

标签: c# asp.net rendering

<asp:HiddenField ID="HiddenField1" runat="server" />
<asp:TextBox ID="Textbox1" runat="server" Visible = "false"></asp:TextBox>

ASP.Net如何将可见性属性asp:HiddenFieldasp:TextBox呈现为false?

4 个答案:

答案 0 :(得分:1)

在你的背景下

<asp:HiddenField ID="HiddenField1" runat="server" />
<asp:TextBox ID="Textbox1" runat="server" Visible = "false"></asp:TextBox>

text-box将不会在浏览器上呈现 但是hidden field将被渲染。

您从服务器端代码设置的控件可见性将不会在浏览器上呈现。
您要使用css display:none

答案 1 :(得分:1)

它将呈现与

相同的内容
<input id="_controlId" type="hidden" value="" name="_controlId">

您可以在浏览器中打开页面并查看页面来源。

如果您希望服务器根本不渲染您的控件,请将它们放入PlaceHolder并设置属性Visible = "false"

<asp:PlaceHolder ID="PlaceHolder1" runat="server" Visible = "false">
    <asp:TextBox ID="Textbox1" runat="server" ></asp:TextBox>
</asp:PlaceHolder>

答案 2 :(得分:0)

你可以自己找到它。运行.aspx页面,然后单击页面上的查看源。

隐藏字段将包含在标记中,但您无法在页面上直观地看到它。

TextBox在服务器端设置为不可见。除非您将Visible属性更改为true,否则它将不会出现。

答案 3 :(得分:0)

术语“渲染”是指ASP.NET为.aspx页面创建HTML的行为,当您将Visible = false设置为控件时,它不会被渲染。这意味着没有发送到页面的控件的HTML表示。仅设置样式。

您可以将样式设置为display:none,来自服务器端代码,如下所示:

FromDate.Style.Add(HtmlTextWriterStyle.Display, "none")

这样,该元素仍然可供JavaScript操作。