带有输入'type = email'的Angular ng-pattern,用于验证ASCII字符

时间:2014-08-10 15:30:24

标签: javascript forms angularjs validation email

我正在尝试使用AngularJS在注册表单中验证以下IE11invité@test.comüñîçøðé@example.com等电子邮件。

此处的问题是,当前验证仅适用于以下类型的电子邮件something@somwhere something@somewhere.com,并且不会验证我尝试验证的ASCII字符。

当前HTML:

 <input type="email" class="form-control" name="emailInput" ng-model="user.email" placeholder="Email" ng-minlength="3" ng-maxlength="255" maxlength="255" required>

我有一个REGEX,可以在REGEX测试器中验证这些电子邮件,但对于我的生活,我无法弄清楚如何让input对其进行验证并设置一对ng-show&#39 ; s如果有效。

$scope.emailValid = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[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,}))$/;

我的HTML

<input type="text" class="form-control" name="emailInput" ng-model="user.email" ng-patten="emailValid" placeholder="Email" ng-minlength="3" ng-maxlength="255" maxlength="255" required>
<span class="glyphicon glyphicon-remove form-control-feedback" ng-show="registrationForm.emailInput.$invalid && !registrationForm.emailInput.$pristine"></span>
<span class="glyphicon glyphicon-ok form-control-feedback" ng-show="registrationForm.emailInput.$valid && !registrationForm.emailInput.$pristine"></span>

上面的代码验证是否总共有3个字符的最小值,而且我认为不会检查我的REGEX。

0 个答案:

没有答案