【问题标题】:How to modify style for an asp:textbox in codebehind?如何在代码隐藏中修改 asp:textbox 的样式?
【发布时间】:2010-03-15 07:45:15
【问题描述】:

我正在尝试在代码隐藏中设置 asp:TextBox 的样式,文本框的样式最初设置为 style="display:none" 当我将显示设置为阻止代码隐藏时,文本框会出现一会儿,然后它就消失了。我不知道这个问题是什么,当它在javascript中完成时它工作正常

代码如下:

asp.net 代码:

<asp:TextBox ID="txtError" style="display:none" runat="server" ReadOnly="True" Width="95%"></asp:TextBox>

代码隐藏:

txtError.Style["display"] = "block";

我做错了吗?提前致谢。

【问题讨论】:

    标签: c# asp.net styles


    【解决方案1】:

    如果你使用

    txtError.Visible = false; 
    

    您无法使用 JavaScript 访问文本框。 如果您只想更改可见性,可以使用

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

    【讨论】:

      【解决方案2】:

      任何 .NET 控件都具有 Visible 属性 - 您应该使用它以防以后不需要显示控件(如果 Visible 设置为 false,则根本不会呈现控件)。

      关于您的问题 - 我认为有一些客户端 (javascript) 代码将文本框的样式更改回 display:none;

      【讨论】:

      • 我发现javascript代码中有一个Window.Load事件会重置属性。非常感谢
      【解决方案3】:

      如何设置 Visible 属性?

      txtError.Visible = false;
      

      如果这也不起作用,那么您将在其他地方将该值重新设置为无。还要检查文本框的任何父元素是否未被隐藏。

      也不需要将文本框的显示设置为阻止(如果不打算这样做),请改用内联。

      【讨论】:

        猜你喜欢
        • 2010-10-14
        • 2016-11-14
        • 1970-01-01
        • 2011-10-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-13
        • 2011-07-08
        • 2014-08-12
        相关资源
        最近更新 更多