如何添加验证模式不允许输入Angular2中的空格?

时间:2017-03-24 07:55:44

标签: angular typescript

我在Angular2中使用了formBuilder,并希望添加验证模式,以便在输入中不允许“仅空格”。

4 个答案:

答案 0 :(得分:8)

使用以下内容:

Validators.pattern(/^\S*$/)

DEMO

答案 1 :(得分:5)

试试这个,它会在sapce键按下时返回false:

@Component({
  selector: 'my-app',
  template: `
    <div>
       <input class="form-control" type="number" formControlName="pinCode" placeholder="Pin Code"
             (keydown.space)="$event.preventDefault()">
    </div>
  `,
  providers: [myService]
})

访问更多活动:

https://developer.mozilla.org/en-US/docs/Web/Events

答案 2 :(得分:0)

空间不允许

let nospacePattern = [a-zA-Z0-9]

更新

根据评论部分的要求。

  

需要模式不允许只有空格。 (允许单词之间的空格)。但是当用户在输入中输入空格并尝试保存它时,它不应该允许保存

Validators.pattern(".*\\S.*[a-zA-z0-9 ]")

答案 3 :(得分:-1)

嘿,我知道我参加聚会很晚了,但是我也遇到了同样的问题,我对遵循以下代码感到厌倦,并且可以正常工作:

根据我的要求,在表单注释框中应至少包含30个字符,并且该字符应为非space.so,为了添加验证,我使用了以下代码。 我正在使用反应形式。在ts文件中,添加以下代码

comment:[''[Validators.required,Validators.minLength(30),Validators.pattern(/^((?!\s{2,}).)*$/)]]

Hey this sentence has one space between every word //这将起作用

Hey this sentence has more than one space between every word //这会抛出错误

我希望这会在将来对某人有所帮助。