Включить / отключить средства проверки валидатора asp.net в определенной "ValidationGroup" с помощью jQuery?
Я знаю, как включить / отключить отдельные элементы управления валидатора на стороне клиента, используя
ValidatorEnable(validator, false);
Но как включить / отключить все валидаторы в ValidationGroup?
3 ответа
Решение
К сожалению, свойства валидатора не отображаются как атрибуты, поэтому я не знаю хорошего способа их прямого выбора. Вы можете попробовать перебрать массив Page_Validators и отфильтровать те, с которыми вы хотите работать.
Пытаться:
$.each(Page_Validators, function (index, validator){
if (validator.validationGroup == "your group here"){
ValidatorEnable(validator, false);
}
});
Проверьте этот блог, объясняющий, как с Javascript. Основная часть кода из блога:
<script type="text/javascript">
function HasPageValidators()
{
var hasValidators = false;
try
{
if (Page_Validators.length > 0)
{
hasValidators = true;
}
}
catch (error)
{
}
return hasValidators;
}
function ValidationGroupEnable(validationGroupName, isEnable)
{
if (HasPageValidators())
{
for(i=0; i < Page_Validators.length; i++)
{
if (Page_Validators[i].validationGroup == validationGroupName)
{
ValidatorEnable(Page_Validators[i], isEnable);
}
}
}
}
</script>
В качестве альтернативы вы можете просто иметь атрибут ValidationGroup с каждым определенным валидатором.
Тогда вам не понадобится Jquery или javascript, чтобы закрыть их.
Вот ссылка, которая работала для меня.