2016-03-25 5 views
1

У меня есть модель с полемMVC 3 - изменение значения поля до проверки

[Required(ErrorMessage = "Email Address is required")] 
    [RegularExpression(@"^[a-zA-Z0-9._%+-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$", ErrorMessage = "Not a valid email address.")] 
    [Display(Name = "Email Address")] 
    public virtual string EmailAddress { get; set; } 

, и проверка не выполняется, если у меня есть пустое пространство в начале письма. Я хотел бы написать метод JQuery, чтобы обрезать поле до его проверки. Я попытался с размытым приложением, но размытие выполняется после проверки. Как я могу это решить?

Спасибо.

+0

данных пожаров, когда форма представляет не на размытость. –

+0

@KartikeyaKhosla аннотации данных также срабатывает при размытии после отправки формы. – anomepani

+0

Не хотите ли обрезать только в этом поле? Измените это поле? –

ответ

0

Самый простой способ исправить это было бы изменить регулярное выражение, чтобы пробелы до и после того, как электронная почта:

"^ *[a-zA-Z0-9._%+-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,4} *$" 

Вы можете обрезать поле на стороне сервера перед его сохранением.

Я бы порекомендовал использовать EmailAddressAttribute вместо RegularExpression.
На стороне клиента вы можете удалить пробелы, как это: аннотаций jquery validate - replace commas in field before validation occurs

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