ASP TexhBox OnTextChanged在ReqularExpressionValidator存在时不会触发

时间:2011-08-17 21:45:59

标签: asp.net textbox

我有一个带有RegularExpression验证器的文本框。如果具有此RegularExpressionValidator,则不会触发TextBox onTextChanged函数。如果删除了ReqularExpressionValidator,则会触发onTextChanged函数。

以下是示例代码:

<asp:TextBox ID="txt1" CausesValidation="true" runat="server" ValidationGroup="gpccheck"  CssClass="Label4" AutoPostBack=true OnTextChanged="txt1ValueChanged"></asp:TextBox>
                                    <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="txt1"
ErrorMessage="Please Enter Only Numbers"   ValidationExpression="^\d+$" ValidationGroup="gpccheck" SetFocusOnError="true"></asp:RegularExpressionValidator>

我的OnTextChanged函数是

protected void txt1ValueChanged(object sender, EventArgs e)
{
     lbl1.Text = "Value changed";
}

请帮忙

1 个答案:

答案 0 :(得分:0)

使用它:

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="txt1" ErrorMessage="Please Enter Only Numbers"   ValidationExpression="^\d+$" ValidationGroup="gpccheck" SetFocusOnError="true" EnableClientScript="False"></asp:RegularExpressionValidator>

我只在此标记中添加了EnableClientScript="False"。 在此更改后,当您退出文本框(onBlur)时,页面将回发到服务器。