Asp.net ASCX内的验证程序行为

Asp.net ASCX内的验证程序行为,asp.net,ascx,Asp.net,Ascx,我在ASP.NET ASCX控件中有一些输入字段、正则表达式验证器和自定义验证器。这种行为有点奇怪,因为它的工作方式如下: 如果客户端验证器标记错误消息,并将I选项卡从输入字段中移开,然后单击submit,那么页面将按其应该的方式发布。但是,如果客户端验证器标记了错误,而我更正了错误并单击了“提交”按钮,则该错误将被清除,但直到我再次单击“提交”按钮,页面才会提交 我的问题是如何改变这种行为,只需单击一次submit按钮即可清除错误并回发页面?还有,这是“行为”标准吗 更新:此行为在不使用用户控

我在ASP.NET ASCX控件中有一些输入字段、正则表达式验证器和自定义验证器。这种行为有点奇怪,因为它的工作方式如下:

如果客户端验证器标记错误消息,并将I选项卡从输入字段中移开,然后单击submit,那么页面将按其应该的方式发布。但是,如果客户端验证器标记了错误,而我更正了错误并单击了“提交”按钮,则该错误将被清除,但直到我再次单击“提交”按钮,页面才会提交

我的问题是如何改变这种行为,只需单击一次submit按钮即可清除错误并回发页面?还有,这是“行为”标准吗


更新:此行为在不使用用户控件的情况下发生。我相信这是比较器的特定行为。不,自定义验证器也会发生同样的行为。如果我没有“tab-away”并单击按钮,那么我必须单击两次才能进行回发。第一次单击仅清除验证程序。

问题在于CustomValidator的显示类型为动态而非静态。这篇文章帮助我找到了答案

我将赞扬任何解释为什么它会导致这种行为的人