我有一個從數組中填充的簡單下拉列表。 用戶將以可從所述下拉列表中選擇記錄的優先級的形式編輯記錄。我在設置該下拉列表中的選定項目時遇到困難。 這是我爲下拉代碼:在帶有角度的條件下添加屬性2
<select *ngIf="formModel" [(ngModel)]="record.priority" formControlName="priority">
<option value="-1">Select priority</option>
<option *ngFor="let priority of formModel.priorities"
[ngValue]="priority"
[innerHtml]="priority.name"
[selected]="priority.id == record.priority.id"></option>
</select>
然而,不選擇記錄的優先選擇,生成的HTML顯示selected="true"
。 當我改變的代碼如下:
[selected]="(priority.id == record.priority.id ? '' : null)"
結果是selected=""
,但該選項STIL未選中。 我已經確認應該選擇該特定選項。 此外,當我將Firebug中的HTML更改爲selected
時,該選項被選中。 所以我的問題是:如何在特定條件下添加屬性,以便該屬性不會添加到具有空值的其他元素?
您選擇的'ngModel'必須具有您的選項之一的值。在這裏,你的選項值是一個對象,而HTML很難讀取JS對象。相反,請嘗試在選項值中使用屬性,例如'name'或'id',並將ngModel綁定到它。 – trichetriche