小编Ree*_*son的帖子

Angular2 - 模糊的FormControl验证

我正在寻找添加一些基本的电子邮件验证来检查用户是否输入了正确的电子邮件地址.目前使用下面的方法,验证会在用户输入时更新,在输入一个字符后出现错误时看起来很奇怪.

validEmail(c: Control){
if(!c.value.match('[a-z0-9!#$%&\'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&\'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?')){
  return {
    validEmail: true
  };
}
return null;
}    

ctrlEmailAddress: Control = new Control('', Validators.compose([
Validators.required, this.validEmail]));
Run Code Online (Sandbox Code Playgroud)

我想知道是否有可能触发对场的模糊进行验证,例如在angularJS中:

ng-model-options="{ updateOn: 'blur' }"
Run Code Online (Sandbox Code Playgroud)

我知道html中输入字段上的blur选项,但除非有办法将控件置于错误状态,否则这不会使我的控件出错.

任何人都可以帮我指出正确的方向吗?

谢谢.

编辑:我正在寻找angular2解决方案,而不是angularJS解决方案.

validation typescript angular-validation angular

39
推荐指数
5
解决办法
5万
查看次数