2014-10-09 2 views
0

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

Email 1: <input type="email" name="email1" ng-model="emails.email1" /> 
<br /> 
Email 2: <input type="email" name="email2" ng-model="emails.email2" /> 

Я использую следующие CSS, чтобы увидеть результат:

input[type="email"].ng-invalid.ng-dirty { 
    background-color: #FA787E; 
    } 

Проблема заключается в том , проверка не срабатывает, если я не добавлю обязательный атрибут. Входы принимают классы «ng-valid ng-touched ng-dirty» при вводе abc.

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

+1

Невозможно воспроизвести. Пожалуйста, предоставьте скрипту. – Blackhole

+0

Кто-то опускает нас всех, но не успевает оставить комментарий? (Не для вас, черная дыра, я пытаюсь подготовить скрипку) – Kuzgun

+0

Он работает со скрипкой, я не мог найти то, что еще разрывает его в реальном коде. Спасибо @Blackhole для проверки. – Kuzgun

ответ

-1

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

Для примера с формой имени «формы»

form.email1.$error.emails.email1 
form.email2.$error.emails.email2 

, и методы обработки данных :

{{!!form.$error.emails.email1}} 
{{!!form.$error.emails.email2}} 

Оттуда просто отметьте, что поля грязные, и ваш стиль должен применяться.

Read more

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