У меня есть следующий код проверки подлинности электронной почты, который использует директиву ng-pattern. Мне нужно включить одинарные кавычки в проверку ошибок, чтобы, например: asd'[email protected] не удалось. Я не хочу использовать угловую директиву по умолчанию, так как последующие .. (точки), ^, запятые и т.д. не удовлетворяютсяОдиночные кавычки в теге AngularJS
<input type="email" name="username" placeholder="[email protected]" ng-model="user.username" ng-maxlength="100" ng-model-options="{ updateOn: blur }" ng-pattern='/^(([^<>()\[\]\\.\,;:\[email protected]"]+(\.[^<>()\[\]\\.,;^:\[email protected]"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/' required />
<div class="error-container" ng-show="userForm.username.$dirty && userForm.username.$error">
<small class="error" ng-show="userForm.username.$error.required">
Your email is required.
</small>
<small class="error" ng-show="userForm.username.$error.pattern">
Please input a valid email.
</small>
<small class="error" ng-show="userForm.username.$error.maxlength">
Your email cannot be longer than 100 characters
</small>
Это может быть видно из сказанного выше, я использую следующий Regex: ng-pattern='/^(([^<>()\[\]\\.\,;:\[email protected]"]+(\.[^<>()\[\]\\.,;^:\[email protected]"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/'
Вопрос: как включить одиночные кавычки (') так, чтобы они не столкнулись с кавычками тега ng-pattern, а также (^) в Regex. Я искал вокруг, и мне кажется, что я должен использовать & apos, но не знаю, как реализовать. Цените любую помощь.
Используйте '\ x27' вместо' '' и '\ x22' вместо' ''. У вас действительно есть проблемы с '^' тоже? Используйте '\ x5E'. –
Почему бы не используя сборку по проверке электронной почты? http://plnkr.co/edit/ZcQN0WYSoU1gogFo5nic?p=preview –
Скажу, лучше создать урскую директиву здесь. Не используйте сложный шаблон на странице ur html, если вам нужно используйте проверку подлинности электронной почты на более чем одной странице – FarazShuja