Angular 在角度2中关联2个字段(输入和选择)

Angular 在角度2中关联2个字段(输入和选择),angular,angular2-forms,Angular,Angular2 Forms,我的表单中有两个字段,一个是文本输入,一个是选择。 主要功能是:当我在输入中键入数字时(例如:123),它会根据我的选择中选项的值更改选择 问题是,当我键入一个select中不存在的数字时,select输入由该数字设置,但我需要将select设置为“NULL”,否则验证程序在该字段中不起作用 示例:当您键入:001-显示气缸组1,如果002气缸组2,如果003气缸组3,但如果您键入005,例如,它将不显示任何内容(确定),但select的值设置为005,我需要该设置为NULL,因为它是005,在

我的表单中有两个字段,一个是文本输入,一个是选择。 主要功能是:当我在输入中键入数字时(例如:
123
),它会根据我的选择中选项的值更改选择

问题是,当我键入一个select中不存在的数字时,select输入由该数字设置,但我需要将select设置为“NULL”,否则验证程序在该字段中不起作用


示例:当您键入:001-显示气缸组1,如果002气缸组2,如果003气缸组3,但如果您键入005,例如,它将不显示任何内容(确定),但select的值设置为005,我需要该设置为NULL,因为它是005,在验证器中有一个值,但为“fake”值,验证器将传递一个假值,该假值不存在于select中的“我的对象”列表中

普朗克:


银行:
*
{{banks.title}
Preencha o campo banco。
O campo banco aceita somente números。
codBanco(tecla){
此.form3.控制['banco'].patchValue(tecla);
//if(此.form3.controls['banco'].value)
log(this.bancos.code.indexOf(237));
}
银行变更(事件){
this.form3.controls['codBanco'].patchValue(evento.target.value);
}

你能用plunker重现这个吗?请不要使用带有反应式表单的ngModel,你能看到plunker吗?当你键入:001-显示气缸组1,如果002气缸组2,如果003气缸组3,但如果你键入005,例如,它将不显示任何内容(OK),但select的值设置为005,我需要该设置为NULL,因为这在我的母语不是英语时是错误的,我不知道我是否得到了解释
<div class="form-group" [ngClass]="{'has-error':!form3.controls['banco'].valid && form3.controls['banco'].touched}">
         <label class="col-sm-2 control-label">Banco:</label>
         <div class="input-group">
             <span class="input-group-addon">*</span>
           <input formControlName="codBanco" type="text" class="form-control" placeholder="Código Banco..."
           (keyup)="codBanco($event.target.value)">

           <select [(ngModel)]="form3.banco" formControlName="banco" class="form-control"
                 [class.invalid]="form3.controls['banco'].touched && !form3.controls['banco'].valid" (change)="bankChanged($event)">
                   <option *ngFor="let banks of bancos" [value]="banks.code">{{banks.title}}</option>
            </select>
          </div>
          <div *ngIf="form3.controls['banco'].hasError('required') && form3.controls['banco'].touched" class="alert alert-danger">Preencha o campo banco.</div>
         <div *ngIf="form3.controls['banco'].hasError('pattern') && form3.controls['banco'].touched" class="alert alert-danger">O campo banco aceita somente números.</div>

        </div>



   codBanco(tecla){
            this.form3.controls['banco'].patchValue(tecla);
            //if(this.form3.controls['banco'].value)
                console.log(this.bancos.code.indexOf(237));

        }

        bankChanged(evento){
            this.form3.controls['codBanco'].patchValue(evento.target.value);
        }