![](/img/trans.png)
[英]angular how to get a drop down selection input with options from the server
[英]How to get image and text after selection option from drop down using angular 7
在下拉菜單中顯示圖像,但是當我選擇該選項時,只有文本會出現
<mat-select placeholder="Scanner region" [(ngModel)]="job.regions" name="job.regions"
[ngModelOptions]="{standalone: true}">
<mat-option *ngFor="let option of list" [value]="option.name">
<span *ngIf="option.account.accountType === 'AZURE'">
<img class="img-responsive " src="assets/images/azure-small.png" />
</span>
<span *ngIf="option.account.accountType === 'AWS'">
<img class="img-responsive" src="assets/images/aws-small.png" />
</span>
{{option.name}}
</mat-option>
</mat-select>
這是因為您的圖像鏈接是硬編碼的。 您可以使用Renderer2
類的服務從DOM中讀取值,但是更好的方法是:
將圖像鏈接存儲為模型的一部分,即列表中的選項。
並改變
<mat-option *ngFor="let option of list" [value]="option.name">
至
<mat-option *ngFor="let option of list" [value]="option">
因此,當選定的項目是同時包含名稱和圖像鏈接的對象時,通過數據綁定。
<mat-form-field class="full-width">
<span matPrefix [hidden]="project.issueTracker.accountType !== 'AZURE'">
<img class="img-responsive " src="assets/images/azure-small.png" />
</span>
<span matPrefix [hidden]="project.issueTracker.accenter code hereountType !== 'AWS'">
<img class="img-responsive " src="assets/images/aws-small.png" />
</span>
<mat-select placeholder="Scanner region" [(ngModel)]="job.regions" name="job.regions"
[ngModelOptions]="{standalone: true}">
<mat-option *ngFor="let option of list" [value]="option.name">
<span *ngIf="option.account.accountType === 'AZURE'">
<img class="img-responsive " src="assets/images/azure-small.png" />
</span>
<span *ngIf="option.account.accountType === 'AWS'">
<img class="img-responsive" src="assets/images/aws-small.png" />
</span>
{{option.name}}
</mat-option>
</mat-select>
</mat-form-field>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.