如何使用JQuery访问Asp.NET验证器,如必填字段,正则表达式等?
如何使用Jquery控制其显示并自定义它们?
答案 0 :(得分:1)
简而言之,是的,您可以从Javascript访问验证器(您实际上并不需要jQuery来执行此操作),前提是客户端验证已启用(即,页面中至少有一个启用且可见的验证器其EnableClientScript属性设置为true
)。
验证器对象在全局Page_Validators
数组中可用。您可以使用ValidatorEnable()
禁用或启用单个验证程序,并使用ValidatorValidate()
强制验证。 This MSDN article提供了有关客户端验证API的更多信息。
可以通过重新绑定验证器的验证方法来实现任意定制。 This old answer of mine用简单的Javascript记录进程,jQuery给出了类似的结果:
if (window.Page_Validators) {
$.each(window.Page_Validators, function(index, validator) {
validator.__old_evaluationfunction = validator.evaluationfunction;
validator.evaluationfunction = function(value) {
var element = validator.controltovalidate;
if (!validator.__old_evaluationfunction(value)) {
// Validation failed - turn 'element' red, scream at the user, etc.
return false;
} else {
// Validation succeeded - restore 'element' to its normal state.
return true;
}
};
});
}