2017-03-28 1 views
3

내 응용 프로그램에서 반응 형 양식을 사용하여 다음 코드를 사용합니다. 나는 [multiple] 행의 주석을 해제하면Angular2 반응 양식은 다중 속성을 선택합니까?

옵션은 상태 INVALID로 다시 dformControl 폼 컨트롤 개체를 설정하지 않습니다 ...을 선택합니다.

false을 반환합니다. 주석 된 행을 [multiple]="false"으로 변경하더라도 여전히 으로 전환 ... 선택 옵션은 양식 제어 상태를 INVALID으로 설정하지 않습니다. 부울 isMultiple로 선택 수준에서 multiple 재산

<select class="form-control" 
     [id]="dformControl.key" 
     [formControlName]="dformControl.key" 
     /*[multiple]="dformControl.multiple"*/> 

    <option *ngIf="!dformControl.value" 
      value=""> 
    Choose ... 
    </option> 

    <option *ngFor="let opt of dformControl.options" 
      [value]="opt.value" 
      [selected]="dformControl.value == opt.value"> 
    {{opt.label}} 
    </option> 

</select> 

답변

4

바인딩. 그런 다음 변경할 수 있으며 선택 항목도 변경됩니다. 이것 좀 봐, 버튼을 사용하여 변경. 이 필요한 유효성에 영향을 미치는 여러 속성을 추가 할 때 plnkr

<select formControlName="cars" [multiple]="isMultiple"> 
     <option></option> 
     <option *ngFor="let car of cars" >{{car}}</option> 
    </select> 

는 것 같습니다. 여분의 유효성 검사기를 추가 할 수 있었고 예상대로 작동했습니다.

Validators.compose([Validators.required,Validators.pattern('.+')] 
+0

정확하게 읽으면 다른 문제가 있습니다 –

+0

해결책이 있습니까? –

+0

'dformControl.multiple'이'true'를 반환하는 경우에는 다중 선택이어야하며,'false'를 반환하는 경우에는 ist가 정상 선택이어야합니다. –

관련 문제