2017-08-14 38 views
0

我有有另一个2内的表单控件年月表单控件loanTerm内部控制形式,我想通过重置在角2

this.form.control['years'].reset(); 

重置它不幸的是它不工作,因为当我访问this.form.control的属性唯一可用的对象是loanTerm。

<df-years-months-question ng-reflect-_model="[object Object]" ng-reflect-minimum-period="48" ng-reflect-maximum-period="474" ng-reflect-question-label="Loan term" ng-reflect-name="loanTerm" id="loanTerm" class="ng-untouched ng-pristine ng-invalid"><div class="form-inline ng-untouched ng-pristine ng-valid" ng-reflect-form="[object Object]"> 
    <!--bindings={ 
    "ng-reflect-ng-if": "false" 
}--> 
    <div class="input-group col-xs-5 col-sm-3"> 
    <input class="form-control ng-untouched ng-pristine ng-valid" formcontrolname="years" type="number" ng-reflect-name="years" min="48" max="474"> 
    <span class="input-group-addon">years</span> 

    <div class="input-group col-xs-5 col-sm-3"> 
    <input class="form-control ng-untouched ng-pristine ng-valid" formcontrolname="months" max="11" min="0" type="number" ng-reflect-name="months"> 
    <span class="input-group-addon">months</span> 
    </div> 
</div> 
</df-years-months-question> 
    </div> 

我已经试过如下:不幸的是没有工作

  • this.form.control['loanTerm'].reset();
  • this.form.get('loanTerm').get('years').reset();
+0

模型价值,你可以发布你的HTML,而不是编译一个? – galvan

+0

你有一个** formgroup **'loanTerm',而不是**表单控件**对吗?你想达到什么目标有点不清楚。什么应该重置?你也可以显示实际的代码,TS和模板:) – Alex

回答

0

只能重新完整形式不是单一的输入框,而不是尝试 在您的ts

export class HeroDetailComponent4 { 
    form: FormGroup; 


    constructor(private fb: FormBuilder) { 
    this.createForm(); 
    } 

    createForm() { 
    this.form= this.fb.group({ 
    "years":"", 
    "months":"" 
    }); 
    } 
} 

,并在你的HTML

<form [formGroup]="form" novalidate> 
    <div > 

       <div > 
       <input formControlName="years" type="number" > 
       <span class="input-group-addon">years</span> 

       <div class="input-group col-xs-5 col-sm-3"> 
       <input formControlName="months" "> 
       <span class="input-group-addon">months</span> 
       </div> 
      </div> 
    </form> 
     {{ form.get('years').value }} 

现在你可以在空TS

+0

感谢您的答复。但不幸的是,它不工作,因为当我检查this.form.control内的属性时,那里没有年。 – stuckoverflow24

+0

好吧现在我注意到你没有表格标签我在编辑答案 – vaibhavmaster