AutoPostBack还原我对事件onChange所做的更改。 ASP.NET

时间:2018-04-30 23:28:13

标签: javascript asp.net webforms

这些是我在asp.net中使用的控件。一切都在UpdatePanel内。

<asp:TextBox ID="TxtDoc" runat="server" MaxLength="4"></asp:TextBox>
<asp:DropDownList ID="TipoDoc" runat="server" AutoPostBack="False"></asp:DropDownList>
<asp:DropDownList ID="Ddl2" runat="server" AutoPostBack="True"></asp:DropDownList>

代码隐藏:

TipoDoc.Attributes.Add("onChange", "cambiarLength(this, '" + TxtDoc.ClientID + "');");

当我从下拉列表“TipoDoc”中选择一个项目时,函数cambiarLength会更改文本框“TxtDoc”的最大长度。 当我从autopostback为真时从第二个下拉列表“Ddl2”中选择一个项目时,前一个文本框的maxlength将恢复为初始值。我怎么能避免这样的问题呢?

1 个答案:

答案 0 :(得分:0)

试试这个:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    { 
        TipoDoc.Attributes.Add("onChange", "cambiarLength(this, '" + TxtDoc.ClientID + "');");
    }   
}