Отключите некоторые элементы проверки ASP.Net, когда установлен флажок

Я использую старомодную проверку ASP.NET(ugh) для процесса проверки. У меня есть флажок - "Я позвоню с данными моей кредитной карты" -. Если этот флажок установлен, мне нужно отключить необходимый валидатор полей и валидатор для проверки номера кредитной карты как на клиенте, так и на обратной почте.

Как это сделать?

Ответ 1

Вы можете отключить валидаторы на стороне клиента (в javascript):

function disable(validatorId)
{
   var validator = document.getElementById(validatorId);
   ValidatorEnable(validator, false);
}

Если validatorId - это идентификатор клиента, который должен быть отключен. См. эту страницу для полного примера.

Ответ 2

Вы можете отключить валидаторы на стороне сервера:

MyFieldValidator.Enabled = MyCheckBox.Checked

Page.Validate()
If Page.IsValid Then
   'stuff
end if

Ответ 3

Если вы отключите серверную сторону, вы можете сделать

button1.CausesValidation = False

в вашем CheckChangedEvent это более полезно, если у вас много валидаторов и вам нужно отключить их все.