Asp.net имеет функцию javascript на стороне клиента для управления валидаторами, функцию "ValidatorEnable",
ValidatorEnable(RequiredFieldValidatorId, false);
Вы можете вызвать его просто используя javascript, вы должны отправить объект валидатора в функцию (а не только его идентификатор).
if (x==y) {
ValidatorEnable($('#<%=rfvFamily.ClientID %>'), false);
} else {
ValidatorEnable($('#<%=rfvFamily.ClientID %>'), true);
}
или
if (x==y) {
ValidatorEnable(document.getElementById("<%=rfvFamily.ClientID %>", false);
} else {
ValidatorEnable(document.getElementById("<%=rfvFamily.ClientID %>", true);
}
полная документация по:
http://msdn.microsoft.com/en-us/library/Aa479045#aspplusvalid_clientside
Другой способ - установить в свой DropDownList CausesValidation = "false", чтобы валидаторы не блокировали обратную передачу при изменении записи DropDownList.
(*) Помните, что эта функция предназначена для стороны клиента, для отключения валидатора на стороне сервера вы также должны отключить валидатор при обратной передаче страницы.
if (IsPostBack){
if (x==y) {
rfvFamily.Enabled = false;
}
}