Tom*_*olo 3 html javascript jquery dom angular
在我的angular2 + bootstrap + material项目中,我在这个问题上挣扎了2天。
我需要更改材料设计复选框:
我知道我可以使用一个实质性的单选按钮,但是在那种情况下,我还有另一个问题:我无法取消选中该单选按钮。
因此,我需要启用唯一检查以及检查/取消检查功能。
我尝试了以下
这是html 的代码:
<div class="row">
<div class="col-lg-12">
<label>Ordini cliente</label>
<mat-table #table [dataSource]="dataSource">
<!--- Note that these columns can be defined in any order.
The actual rendered columns are set as a property on the row definition" -->
<!-- Select Column -->
<ng-container matColumnDef="Select">
<mat-header-cell *matHeaderCellDef></mat-header-cell>
<mat-cell *matCellDef="let item"><mat-checkbox color="primary"></mat-checkbox></mat-cell>
</ng-container>
//OTHER COLUMNS ...
<mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
<mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
</mat-table>
</div>
Run Code Online (Sandbox Code Playgroud)
我的想法是将元素绑定到这样的click事件
<mat-cell *matCellDef="let item"><mat-checkbox (click)="foo()" color="primary"></mat-checkbox></mat-cell>
Run Code Online (Sandbox Code Playgroud)
设置一个属性以跟踪选中了哪个。然后仅对所选的一项设置[已检查]。例如,在这里,我使用ngFor索引进行跟踪:
<div *ngFor="let item of [1,2,3]; let i = index">
<mat-checkbox [checked]="selected === i" (change)="selected = i">Check me!</mat-checkbox>
</div>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2562 次 |
| 最近记录: |