2017-07-18 107 views
0
<select class="select-sm form-control staffPatient" [(ngModel)]="personType"> 
          <option value="staff" selected="true">Staff</option> 
          <option value="patient">Patient</option> 
          </select> 

根據選擇我需要顯示字段。根據Angular 2中的下拉選擇選擇輸入類型

如果是工作人員,這將顯示

<p-autoComplete [hidden]="personType != staff" [(ngModel)]="val" [suggestions]="staffInfoList" field="perscode" field="personName" [minLength]=4 
            (onSelect)="setPersonInvolved($event)" 
            (completeMethod)="getPersonalMast($event)" [ngModelOptions]="{standalone: true}"></p-autoComplete> 

如果是病人,這將顯示

<input [hidden]="personType != patient" type="text" required="" class="form-control search" (keyup.enter)="getPatientInfo($event)" > 

寫的代碼[隱藏],但不工作。 2.試了選擇=「真」,使員工爲默認的下拉,但在下拉默認即將空

+0

嘗試'this.personType =「staff」'進行初始化。 – SaiUnique

+1

試試這個:'[hidden] =「personType!='patient'」'。儘量將患者/工作人員用作字符串。 –

+0

[hidden] =「personType!='耐心'」 - 不工作 – user630209

回答

-1
<select class="select-sm form-control staffPatient" #personType (change)='onChange(personType.value)'> 
         <option value="staff" selected="true">Staff</option> 
         <option value="patient">Patient</option> 
         </select> 

然後在你的.ts文件

staff = false; 
patient = false; 
onChange(value) { 
    if (value === 'staff') { 
     this.staff = true; 
    }if (value === 'patient') { 
     this.patient = true; 
    } 
} 

最後

<p-autoComplete *ngIf='staff' [(ngModel)]="val" 
[suggestions]="staffInfoList" field="perscode" field="personName" 
    [minLength]=4 
           (onSelect)="setPersonInvolved($event)" 
           (completeMethod)="getPersonalMast($event)" 
[ngModelOptions]="{standalone: true}"></p-autoComplete> 

而且

<input *ngIf='patient' type="text" required="" class="form- 
control search" (keyup.enter)="getPatientInfo($event)" > 
相關問題