设置值并更新表单控件

时间:2016-03-31 13:34:21

标签: angular angular2-forms

我想知道是否有任何方法来设置值并更新表单控件的有效性。鉴于以下内容:

this.updateForm = this._formBuilder.group({
    user: ['',Validators.required]     
});

我有一些关于更改触发器的指令,触发以下内容:

changeUserSelection(value){
    this.updateForm.controls['user'].value = value // doesnt trigger validation?
}

我想知道如何设置值,并触发此字段的验证。按照我的方式做,不会触发验证。

由于

4 个答案:

答案 0 :(得分:8)

更新到Angular2 final

根据angular2的最终版本updateValue已更改为setValue 所以新语法应该是这样的

changeUserSelection(value){
  this.updateForm.controls['user'].setValue(value);
}

答案 1 :(得分:4)

您应该使用(define replaceFirst( lambda (X Y L) (cond ( (null? L) '() ) ( (equal? (car L) X) (cons Y (cdr L)) ) ( #t (cons (car L) (replaceFirst X Y (cdr L))) ) ) )) 方法:

updateValue

答案 2 :(得分:2)

您也可以尝试patchValue

this.updateForm.patchValue({ user: value });

答案 3 :(得分:0)

您可以尝试this.form.updateValueAndValidity();更新多个控件的值和验证。