Проверка ASP MVC с использованием RegularExpression для поля со списком - PullRequest
0 голосов
/ 10 июля 2010

У меня есть поле со списком, подобное этому

<select name="Type" id="Type" >
  <option value="0">--Select--</option>
  <option value="Open Ended">Open Ended</option>
  <option value="Property">Property</option>
</select>

, и мой валидатор MVC содержит это

[Required(ErrorMessage = "Required Field")]
[RegularExpression(@"^[^0]+", ErrorMessage = "Please Select the Type")]
public string Type { get; set; }

Но когда я отправляю форму, ошибка не выдается, даже когда "-Select-- "выбран.Я что-то здесь упускаю?

Ответы [ 2 ]

0 голосов
/ 11 июля 2010

Измените это:

<option value="0">--Select--</option>

на это:

<option value="">--Select--</option>

Теперь обязательный атрибут проверки поля - единственный, который вам нужен.

0 голосов
/ 10 июля 2010

Попробуйте указать знак $ в конце регулярного выражения.

Если это не поможет, попробуйте пропустить атрибут значения в опции "--Select--" (и его содержимое тоже):

<option label="--SELECT--"></option>

В этом случае ваш атрибут 'Required' вызовет ошибку проверки (потому что браузер отправит параметр формы с неопределенным значением или вообще не будет публиковать этот параметр) - это помогает в моем случае:)

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