【发布时间】:2019-02-13 20:06:55
【问题描述】:
我正在尝试创建一个包含两个无线电组的下拉列表。它看起来像这样:
Sort By:
Option 1
Option 2
Option 3
Order:
Ascending
Descending
下拉菜单的图片:
左:我正在努力实现的图像右:当我进行选择时会发生什么(占位符值保留):
我有我想要的样式,但我遇到了一个问题,当我进行选择时,下拉列表中没有填充所选值。我想在“排序方式:”单选组中显示该值。
sample.component.html
<mat-form-field class="c-table-header__sort" (click)="sort()">
<mat-select class="c-table-header__sort-select" placeholder="Sort">
<mat-option class="c-table-header__sort-select-option">
<div>Sort by</div>
<mat-radio-group class="c-table-header__sort-select-option-rgroup__sort" #sortOptionGroup [(ngModel)]="radioData">
<mat-radio-button name="order" class="c-table-header__sort-select-option-rgroup__sort-rbutt"
*ngFor="let sort of sortOptions.options" [value]="sort">{{sort}}
</mat-radio-button>
</mat-radio-group>
<div>Order</div>
<mat-radio-group class="c-table-header__sort-select-option-rgroup__order" #sortOrderGroup [(ngModel)]="radioTwoData">
<mat-radio-button name="sort" class="c-table-header__sort-select-option-rgroup__order-rbutt"
*ngFor="let sort of sortOptions.order" [value]="sort">{{sort}}
</mat-radio-button>
</mat-radio-group>
</mat-option>
</mat-select>
</mat-form-field>
sample.component.ts(相关部分)
Component({
...
encapsulation: ViewEncapsulation.None
})
export class BillPayScheduledDashboardComponent implements OnInit {
...
radioData;
radioTwoData;
...
sort() {
console.log(this.radioData);
console.log(this.radioTwoData);
}
}
sample.component.css(相关部分)
.c-table-header__sort-select-option{
min-width: 75px;
min-height: 500px;
display: flex;
flex-direction: column;
align-items: flex-start;
}
.c-table-header__sort-select-option-rgroup__sort,
.c-table-header__sort-select-option-rgroup__order{
display: flex;
flex-direction: column;
}
在我写这篇文章的时候,我也想知道把这一切都放在一个表格中是否可能/更容易。欣赏任何见解/解决方案。
【问题讨论】: