如何在Angular中修复此表单验证?

时间:2018-11-14 09:46:26

标签: angular angular6

  1. 当我输入用户名时,除非我完全提供字符,符号和数字,否则它将始终显示错误。虽然我需要让用户选择不同的组合。例如,仅字符,带数字的字符,带符号的字符,仅数字,带符号的数字等。目前完全需要。
  2. 对于“名称”字段,我只需要输入字符,而不允许用户提交数字或符号。问题在validators.pattern

这是错误的代码:

 this.RegisterForm = new FormGroup({
    'username': new FormControl(null, [Validators.required,
       Validators.pattern('(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])'),]),
    'name': new FormControl(null, [Validators.required,
       Validators.pattern('(?=.*[a-z])(?=.*[A-Z])'),]),
     ...
     ...
})

如何修复这两种形式的validators.patterns

2 个答案:

答案 0 :(得分:0)

如果只需要数字,可以这样:Validators.pattern(/^[0-9]*$/)

对于用户名:Validators.pattern(/^[a-z0-9A-Z._]+$/i)

答案 1 :(得分:0)

对于name使用^[a-z]+$,对于'用户名'使用^[a-z0-9A-Z._]+$