首页 > 解决方案 > 无法在选项中选择值(角度下拉列表。)

问题描述

我已经广泛搜索了。我从其他答案[selected]中得到的是,如果我想选择一个特定的选项,我需要使用它。

它似乎不起作用。为什么?这是我所拥有的:

<ngx-datatable-column name="status" prop="operationStatus" [flexGrow]="1">
    <ng-template let-value="value2" let-row="row" let-rowIndex="rowIndex" gx-datatable-cell-template>
          <select class="geraeteStatus" [(ngModel)]="selectableGerateStatus">
             <option *ngFor="let e of selectableGerateStatus" [ngValue]="e" 
                 [selected]="e.id === value2">
                {{e.id}}
             </option>
          </select>
   </ng-template>
</ngx-datatable-column>

我确信 的值e.id等于value2每次迭代至少一次的值。然而,它只是不起作用。实际上,我可以将任何我想要的东西(e.id === 2,甚至'true')放入[selected]其中没有任何效果。我不知道我错过了什么。任何答案都非常感谢。

标签: angularselecthtml-select

解决方案


无需[selected]在您的选项中使用

只需进行如下更改

组件.html

<select class="geraeteStatus" (change)="onChange($event)" [(ngModel)]="selectedStatus">
   <option *ngFor="let e of selectableGerateStatus" [ngValue]="e.id">
     {{e.id}}
   </option>
</select>

但是在这里你需要匹配ngValue你的ngModelthen 才会被选中。

组件.ts

selectedStatus: string;

onChange(status: string) {
   this.selectedStatus = status;
}

有关选择选项的更多信息,请查看此处


推荐阅读