2013-04-12 2 views
0

Итак, вот в чем проблема: у меня есть форма и свойство, украшенное [RequiredAttribute] altough initialy, оно скрыто в форме. Есть флажок. Когда он щелкнут, он отображает элемент. Поэтому я хотел проверить свойство только тогда, когда он не скрыт, но при отправке, когда он отправляет модель контроллеру, я все еще вижу ModelState.IsValid == false (хотя элемент скрыт), так как я могу удалить все ошибки, связанные с этим свойством, когда элемент скрыт (в javascript, прежде чем браузер отправит модель на контроллер)?модификация ModelState на клиенте

модификация $('form').validate().errorList не помогает

Конечно, я могу иметь булев флаг (isHidden или что-то) и проверить модель вручную на контроллере на основе этого флага. Но, возможно, есть простой способ изменить свойства проверки на клиенте, возможно, каким-то образом они повлияют на модель?

+1

Валидация происходит на _server_. Вам нужно изменить валидаторы на стороне сервера. – SLaks

+0

ненавязчивая проверка происходит на клиенте, хотя – Agzam

+1

Ненавязчивая проверка не влияет на валидацию сервера каким-либо образом. Код, который вы пытаетесь написать, может работать только при наличии дыры в безопасности. – SLaks

ответ

1

попробовать

<script type="text/javascript"> 
    $.validator.setDefaults({ 
     ignore: "" 
    }) 
</script> 

или вы можете рассмотреть возможность сделать собственный валидатор.

THIS answer может помочь

Смежные вопросы