0

我想知道如何将选定的数据网格项传递给事件处理程序?

我的数据网格:

<div>
    <kendo-grid [data]="gridData"
    [sortable]="true"
    [selectable]="true"
    (selectionChange)="selectRow($event)"
    >

我的 grid.component.ts

private selectRow(event:any){
        console.log(event)
    }

如何将选定的行传递给事件处理程序?

更新

我现在已经这样解决了:

private selectRow(event:any){
        console.log(event)
        let i = event.index
        let selectedRow = this.gridData[i];
        console.log(selectedRow)
    }

有人可以告诉我这是否是正确的方法吗?或者有没有更好的方法来解决这个问题?

谢谢,

4

2 回答 2

1

现在我们可以直接从事件中获取数据项,

 (selectionChange)="selectRow($event)"

然后在组件中,我们可以从中选择所有行selectionEvent

 onSelect(e: SelectionEvent) {
        if (e.selectedRows.length > 0) {
            var rows = e.selectedRows;
            console.log(rows[0].dataItem);
        }
 }
于 2017-09-04T12:51:47.820 回答
1

是的,您正在使用推荐的方式从选择事件中查找数据项。我们不提供 dataItem 作为事件参数的一部分,因为无论如何它都可以从处理程序中轻松访问。

于 2016-11-04T16:49:01.887 回答