0

我想知道 ASP.NET 验证控件是如何工作的(例如:必填字段验证器、正则表达式验证器)。单击按钮时会发生什么?客户端触发了哪些事件?内部真正发生了什么?

4

1 回答 1

1

当您单击按钮时(如果您定义了 CausesValidation="true")按钮向服务器发送请求,该请求使用 __doPostBackWithOptions 函数目标,其中包含 valiadtion 组作为参数(如果您为按钮定义了 ValidationGroup 属性)。__doPostBackWithOptions 包含函数 Page_ClientValidate。在这种情况下,将检查属于该组的所有验证器。如果结果 (Page_IsValid) 为真,则回发发生。如果您没有定义验证组(但 CausesValidation 为真),则将检查页面上存在的所有验证器。如果定义 CAusesValidation false 将使用 _doPostBack 函数而不进行验证器检查。更多信息在这里: http: //msdn.microsoft.com/en-us/library/aa338815 (v=vs.71).aspx和 http://msdn.microsoft.com/en-us/library/aa479045。

于 2012-12-20T07:46:11.363 回答