我正在使用 PrimeNg 表组件,需要实现行选择。我有以下代码:
<p-table
[value]="data"
[columns]="columns"
[(selection)]="selectedItems"
selectionMode="multiple">
<ng-template pTemplate="header">
<tr>
<th>
<p-tableHeaderCheckbox style="margin-left: 5px;"></p-tableHeaderCheckbox>
</th>
<th>Header 1</th>
<th>Header 2</th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-row>
<tr [pSelectableRow]="row">
<td>
<p-tableCheckbox [value]="row"></p-tableCheckbox>
</td>
<td>Value 1</td>
<td>Value 2</td>
</tr>
</ng-template>
</p-table>
基本上,我使用文档 here 中给出的不带元键的复选框选择和多选。 .现在,当我单击该行时,它正在选择并且复选框也被选中。但是当我点击复选框时,它没有被选中。如果我点击 Select All
,然后它也在选择所有行。当我使用开发者工具检查时,它没有生成 aria-checked
即使检测到点击也为真。解决此问题的任何解决方法?
最佳答案
@Arun 的回答是正确的。如果有人也偶然发现这个问题并且时间紧迫,我只是添加一些格式;):
<ng-template pTemplate="body" let-data>
<tr [pSelectableRow]="data">
<td>
<p-tableCheckbox [pSelectableRow]="data" [value]="data"></p-tableCheckbox>
</td>
</tr>
</ng-template>
它也可以在不向 tableCheckbox 提供 [index] 的情况下运行良好。
关于javascript - 在 PrimeNg 表中同时使用复选框选择和行选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64483628/