Как использовать обязательный атрибут для свойств, которые могут быть скрыты в MVC - PullRequest
2 голосов
/ 31 августа 2011

Сценарий: пользователь должен заполнить форму, и в зависимости от его выбора отображаются различные свойства (с использованием jquery .show и .hide). Проблема: я хочу, чтобы некоторые из тех свойств, которые показывались, были обязательными (но только тогда, когда они показаны ofc). Атрибуту [Обязательный] не важно, отображается свойство или нет Поэтому, если я использую [Обязательно], пользователю предлагается заполнить свойства, которые он не видит. Решение:?

1 Ответ

4 голосов
/ 31 августа 2011

Вы можете использовать атрибут RequiredIf для выполнения условной проверки:

[RequiredIf("HiddenFoo", "true", ErrorMessage = "Foo is required")]
public string Foo { get; set; }

public string HiddenFoo { get; set; }

Теперь добавьте скрытое поле с именем HiddenFoo и затем переключайте его значение, когда вы показываете / скрываете текстовое поле Foo. Foo потребуется только если HiddenFoo="true".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...