Валидатор: как отключить проверку ServerSide в случае сбоя ClientSide - PullRequest
0 голосов
/ 24 ноября 2018

Я создаю страницу, где пользователь вводит номер карты, и у меня есть несколько валидаторов, прикрепленных к текстовому полю.

Первый - RequiredFieldValidator

Второй - RegularExpressionValidator

Третий - CustomValidator с OnServerValidate="validateServer" и ClientValidationFunction="validateClient"

Пользовательский выполняет валидатор на стороне клиента, а затем на стороне сервера.Я хочу, чтобы серверная сторона НЕ ударилась, если валидатор регулярных выражений не работает.В пользовательском коде на стороне клиента я проверяю валидатор регулярных выражений и возвращаю True (чтобы у меня не было двойного сообщения об ошибке, одного из REGEX и одного из валидаторов CUSTOM), но как мне отключить проверку сервера в настраиваемом валидаторе?Я не могу понять это.

Я пробовал это на клиентском валидаторе, но на серверном валидаторе все равно есть:

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

1 Ответ

0 голосов
/ 27 ноября 2018

Не берите в голову.

Валидатор на стороне сервера не выполняется, если на стороне клиента происходит сбой валидатора.

Причина, по которой сторона сервера выполнялась на моей стороне, заключается в том, что на стороне клиента была ошибка javascript, которую я не уловил (пауза при ошибках JS была отключена).Из-за ошибки JS в операторе IF всегда запускается проверка на стороне сервера.

...