【发布时间】:2018-11-12 07:18:27
【问题描述】:
我是 UI 开发和 PrimeNg 的新手,可能答案就在那里,但我找不到。 Anyhoo,我在一个 ngFor 循环中创建多个级别的下拉列表。例如,我有 2 间豪华房和套房。而Deluxe有Breakfast,Breakfast+Lunch,Breakfast+DinnerandSuite只有2个(Breakfast,Breakfast+Dinner)所有这些都是从DB获取数据生成的。
所以对于第一个下拉菜单,如果用户选择 Deluxe,第二个下拉菜单的选项应该有 3 个条目,而如果它选择 Suite,则选项应该只有 2。如何实现?
模板:
<div *ngFor="let room of flatRoomObject">
<div>
<span class="label" title="{{room.Room.Code}}" style="width: 500px;font-weight: normal">{{room.Room.Name}}</span>
<span>
<p-dropdown [options]="masterRooms" [style]="{'width':'195px'}" [(ngModel)]="room.Room.MasterId"></p-dropdown>
</span>
</div>
<div *ngFor="let rateplan of room.Rateplans">
<div>
<span class="label" title="{{rateplan.Code}}" style="width: 500px;margin-left: 30px;font-weight: normal">{{rateplan.Name}}</span>
<span>
<p-dropdown [options]="masterRateplans" [style]="{'width':'165px'}" [(ngModel)]="rateplan.MasterId"></p-dropdown>
</span>
</div>
</div>
</div>
请注意,masterRooms 是房间列表,而 masterRateplans 是我打算根据第一个下拉列表中选择的房间动态更改的房间列表。 masterRooms 和 masterRateplan 从组件中的 Db 中获取。
【问题讨论】:
-
发布您尝试过的代码。
-
并更正您的标记... 不 Primefaces相关...
-
提供
flatRoomObject的例子 -
@sabithpocker 假设 flatroomObject 是一个包含房间 ID、名称和代码的简单对象。
标签: angular primeng primeng-dropdowns