客户端捕获validation 控件验证事件

问:

Hi,

Do u guys know if we can trap in client side when a validation is taking place or when it s finished in client side. I am talking about validation controls like: requiredfieldvalidator, RegularexpressionValidator..etc

More precisely, I need to trap the event when the RegularExpressionValidator succeeds or when it fails, but I want to handle that client side. Is that possible? How please?

Thank you


答:

Hi,

client-side validation library has a few methods for example ValidatorValidate (you can view them with reflector from System.Web.dll's resources and viewing WebUIValidation.js)

function ValidatorValidate(val, validationGroup, event) {

//there's some script here

}

1. so with javascript basically taking reference to the old ValidatorValidate() within a variable

var oldValidatorValidate = ValidatorValidate;

2. Creating your own ValidatorValidate

function MyValidatorValidate(val, validationGroup, event){

  //first call the original one
  oldValidatorValidate(val, validationGroup, event);

 //Here you can check val.isvalid - e.g write your logic here, like check for the correct validator etc etc
  alert(val.id + ":" + val.isvalid);

}

3. set new reference in javascript

ValidatorValidate = MyValidatorValidate;

Now when ValidatorValidate is called by client-side validation framework, it calls your MyValidatorValidate method, which delegates the job first to the original method, and then does its logic after the "base" method has done its job.

http://forums.asp.net/p/1282363/2454378.aspx

你可能感兴趣的:(validation)