我有一个记录表,其中每列中的第一个单元格都有一个复选框。单击复选框时,我将该记录的id存储在typescript中的数组中:
onCheckboxClick(id) {
if (this.selectedInvoiceables.indexOf(id) > -1) {
this.selectedInvoiceables.splice(id, 1);
} else {
this.selectedInvoiceables.push(id);
}
if (this.selectedInvoiceables.length > 1) {
this.disableBulkEdit = false;
} else {
this.disableBulkEdit = true;
}
}
这是复选框:
<mat-checkbox
class="checkbox"
(change)="onCheckboxClick(invoice.id)"
id = "invoiceCheckbox{{invoice.id}}"
[checked]="selectedInvoiceables.indexOf(invoice.id) > -1"
> </mat-checkbox>
因此,只要单击复选框,我们就会存储ID。然而,工作正常,似乎存在一个问题,即单击一个复选框将取消选择另一个复选框,即使该值仍包含在我的selectedInvoiceables
数组中。我目前检查[checked]
衍生物是否不够好或不定期刷新?
答案 0 :(得分:2)
您可以尝试使用[(ngModel)]=""
语法将复选框的模型/状态绑定到值: