gpt4 book ai didi

angular - 使用 Angular 4 根据第一个下拉列表选择第二个下拉列表

转载 作者:行者123 更新时间:2023-12-02 15:00:55 24 4
gpt4 key购买 nike

我有两个下拉菜单,其中填充了来自服务器的数据。第一个下拉列表包含州,第二个包含城市。就像我选择一个州名称一样,只有该州的城市应该使用 Angular 4 显示在第二个下拉列表中。

<mat-tab-group>
<mat-tab label="Basic Info">
<ng-template mat-tab-label>
<div fxLayout="center center">
<mat-icon style="font-size: 16px; line-height: 18px">gps_fixed</mat-icon>
State
</div>
</ng-template><br /><br /><br /><br />
<div class="ui fluid container" fusePerfectScrollbar>
<div class="content">
<mat-form-field>
<mat-select placeholder="State" [(ngModel)]="selectedValue" name="state" (change)="dropdownchange($event.target.value)">
<mat-option>None</mat-option>
<mat-option *ngFor="let state of states" [value]="state">{{state}}</mat-option>
</mat-select>
</mat-form-field><br />
<h3>You selected: {{selectedValue}}</h3>
</div>
</div>
</mat-tab>
<mat-tab label="Location">
<ng-template mat-tab-label>
<div fxLayout="center center">
<mat-icon style="font-size: 16px; line-height: 18px">location_on</mat-icon>
City
</div>
</ng-template>
<div class="ui fluid container" fusePerfectScrollbar>
<div class="ui fluid container" fusePerfectScrollbar>
<div class="content">
<mat-form-field>
<mat-select placeholder="City">
<mat-option>None</mat-option>
<mat-option *ngFor="let cities of city" [value]="state">{{cities}}</mat-option>
</mat-select>
</mat-form-field><br />

</div>
</div>
</div>
</mat-tab>
</mat-tab-group>

最佳答案

应用程序组件.ts

import { Component } from '@angular/core';

@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
private map = new Map<string, string[]>([
['Poland', ['Warszawa', 'Krakow']],
['USA', ['New York', 'Austin']],
])

country: string;
city: string;

get countries(): string[] {
return Array.from(this.map.keys());
}

get cities(): string[] | undefined {
return this.map.get(this.country);
}

}

app.component.html

<select [(ngModel)]="country">
<option *ngFor="let country of countries" [value]="country"> {{ country }} </option>
</select>

<select *ngIf="country" [(ngModel)]="city" [value]="city">
<option *ngFor="let city of cities"> {{ city }} </option>
</select>

Live demo

在您的情况下,您需要对上面的示例进行更改的是使用服务器中的数据填充国家/城市 map 。

关于angular - 使用 Angular 4 根据第一个下拉列表选择第二个下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49771116/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com