输入满足要求时执行操作

时间:2016-06-13 20:02:18

标签: javascript angularjs forms validation angular

当输入字段中输入的字符串达到给定长度使用Angular2 时,我想执行操作(基本上提交表单)。我尝试过使用Angular2的控件,但它似乎并不适用于此。

我可以使用jQuery或vanilla Javascript来做到这一点,但我想知道是否还有更多" Angular2"这样做的方法。

<input type="text" value="{{userInput}}" class="form-control">
// When userInput > 3, submit form

这个框架比较新,我在互联网上找不到任何解决方案,虽然它可能很简单。有没有人有想法?

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以在输入和订阅上关联控件valueChanges属性。

以下是一个示例:

@Component({
  (...)
  template: `
    <input type="text" value="{{userInput}}"
           class="form-control"
           [ngFormControl]="ctrl">
  `
})
export class SomeComponent {
  constructor() {
    this.ctrl = new Control();
    this.ctrl.valueChanges
          .filter((value) => {
            return (value.length > 3);
          })
          .subscribe((value) => {
            // do something
          });
  }
}