单击单元格按钮时如何获取网格的行数据

how to get grid's row data when in cell button is clicked

我有一个 Kendo 网格

<kendo-grid [data]="gridData">
  <kendo-grid-column field="iban" title="IBAN">
  </kendo-grid-column>
  <kendo-grid-command-column title="command">
    <ng-template kendoGridCellTemplate>
      <button class="btn btn-success" (click)="btnCommand($event)">Approve</button>
    </ng-template>
  </kendo-grid-command-column>
</kendo-grid>

目前,批准按钮只是post事件点击事件,如何post整行数据?

这是事件处理程序

btnCommand($event) {
  console.log($event)
}

您可以使用 let 签名将参数传递给 <ng-template> 标签。并将其作为参数发送回事件处理程序。

尝试以下方法

<ng-template kendoGridCellTemplate let-data>
  <button class="btn btn-success" (click)="btnCommand(data)">Approve</button>
</ng-template>

事件处理器:

public btnCommand(data: any) {
  console.log(data);
}

更新:更多按钮

如果需要额外的按钮具有不同的事件处理行为,最好绑定不同的事件处理器。

模板(*.html)

<ng-template kendoGridCellTemplate let-data>
  <button class="btn btn-success" (click)="onApprove(data)">Approve</button>
  <button class="btn" (click)="onDecline(data)">Decline</button>
</ng-template>

控制器 (*.ts)

public onApprove(data: any) {
  console.log(data);
  // do something else
}

public onDecline(data: any) {
  console.log(data);
  // do something else
}