这是我的代码。这三个下拉列表都是可见的,这是错误的。我只希望第一个下拉列表可见(根据选择的选项,该选项应该使其他两个之一可见)。疯狂的是,当我将示例代码插入html时,ng-if起作用。 / p>
<!-- real code <status.html>
<select class="form-control" id="substatus" [(ngModel)]="ddlCorrespondenceStatus">
<option value="M">Manual</option>
<option value="G">Complete</option>
</select>
<select *ng-if="ddlCorrespondenceStatus == 'M'" class="form-control" id="substatus" [(ngModel)]="ddlCorrespondenceSubStatus">
<option value="U">UnroutedTest</option>
<option value="R">Routed</option>
<option value="S">Saved</option>
</select>
<ss-multiselect-dropdown *ng-if="{ddlCorrespondenceStatus == 'G'" class="report-multiselect"
[disabled]="filterDisabled"
[options]="ddlStatus"
[settings]="genericSearchMSDropdownSettings"
[texts]="statusMSDropdownTextSettings"
[(ngModel)]="selectedStatuses"
此行下方的示例代码可在页面内使用,此行上方的实际代码不适用
(ngModelChange)="handleQueueSelection($event)">
</ss-multiselect-dropdown>
Sample code below this works inside the page, Real Code above does not
<div *ngIf="false">
<a *ngIf="false" routerLink="/login" routerLinkActive="active">Login</a>
</div>
答案 0 :(得分:0)
您的代码中存在系统错误。 *ng-if
的语法错误。另一个问题是如果条件再次错误,括号内会出现错误。
您必须将*ngIf
用作-
<select *ngIf="ddlCorrespondenceStatus == 'M'"
class="form-control" id="substatus" [(ngModel)]="ddlCorrespondenceSubStatus">