验证器:如何禁用客户端的服务器端验证失败

Validator: How to disable ServerSide validation if ClientSide fails

我正在制作一个用户输入卡号的页面,并且我在文本框上附加了一些验证器。

第一个是RequiredFieldValidator

第二个是RegularExpressionValidator

第三个是 CustomValidatorOnServerValidate="validateServer"ClientValidationFunction="validateClient"

T自定义的执行客户端验证程序,然后执行服务器端。如果正则表达式验证器失败,我希望服务器端不会被击中。在自定义客户端代码中,我检查正则表达式验证器和 return True(这样我就没有双重错误消息,一个来自正则表达式,一个来自自定义验证器),但是如何禁用自定义验证器上的服务器验证?我想不通。

我在客户端验证器上试过了,但服务器端验证器仍然被命中:

if (!document.getElementById("myRegexValidator").isvalid) {
    args.IsValid = true; 
    return false;
}

没关系。

如果客户端验证器失败,则服务器端验证器不会执行。

服务器端在我这边执行的原因是因为客户端有 javascript 我没有捕捉到的错误(禁用 JS 错误暂停)。由于IF语句中的JS错误,服务器端验证总是被踢。