2010-07-10 1 views
0

У меня есть поле со списком, как этотASP MVC проверки с использованием RegularExpression для Combo Box

<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--». Я что-то упустил?

ответ

0

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

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

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

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

+0

Извините, ребята ... У меня было неправильное имя и идентификатор на мой взгляд, что вызвало проблему ... Я изменил эту вещь, и мой RegEx отлично работает :) – Johnson

0

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

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

в этом:

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

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