javascript - Md-chips 电子邮件验证
问题描述
Md-chips 电子邮件验证
如何为 md-chips 创建电子邮件验证?我下面的表达式不起作用,因为每当我键入内容时都会调用 ng-keypress 指令。
建议?
<div class="row">
<div class="col-md-12" ng-cloak="">
<md-context class="md-padding">
<md-chips md-separator-keys="ctrl.customKeys" ng-keypress="ctrl.validateEmail()" ng-model="ctrl.ConfiguracaoRegra.Emails" md-max-chips="20" placeholder="Inserir um email..." ng-required="true" type="email"></md-chips>
</md-context>
</div>
</div>
vm.validateEmail = function (keyEvent) {
var emailValue = angular.element(".md-input").val();
var reg = /^[_a-z0-9]+(\.[_a-z0-9]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
if (reg.test(emailValue)) {
vm.isEmailValid = true;
} else {
vm.isEmailValid = false;
}
};
解决方案
您应该使用ng-change
指令而不是ng-keypress
,或者将两者结合使用md-on-add
and md-on-remove
(参见https://github.com/angular/material/issues/3580#issuecomment-347052946)
推荐阅读
- javascript - html 元素不会在 mousedown 和 mousemove 上跟随光标
- vb.net - 打印组框及其内容并将其放入 A4 尺寸打印
- xamarin - 如何解决本机链接失败的 Xamarin.iOS
- ios - 带有过渡的 Power Point Presenstion Swift
- vb.net - 为什么这个winform挂起并且没有响应?
- c - 如何检查二次探测是否进入无限循环?
- javascript - 反应状态更新但不映射
- html - 为什么与类“容器”紧贴左边缘?
- java - Java SDK 在 aws s3 存储桶中获取特定文件夹大小
- android - Mapbox Map Kotlin 注释插件 - 需要“样式”,找到“样式?”