[英]Get list of selected rows from Kendo grid in Angular 2+
我在Angular 4應用程序中使用Kendo for Angular網格。 我已經將selectable設置為'true',在網格中有kendo-grid-checkbox-column的列中,並將selectionChange設置為將事件參數作為參數的函數。
在我的selectionChange處理程序中,無論選擇多少行,事件參數上的selectedRows數組都只有一個值。
謝謝,詹姆斯
我的代碼:
onGridSelectionChange(event: SelectionEvent) { debugger; console.log(event.selectedRows.length); // this is always 1 };
<kendo-grid *ngIf='!isLoading' style="width:100%; height: inherit;" class="ag-fresh" [data]='gridView' [selectable]="true" [pageSize]='pageSize' [skip]='skip' [pageable]='true' (pageChange)='onGridPageChange($event)' (selectionChange)='onGridSelectionChange($event)'>
看下面的例子:
所有選擇的鍵都保存在一個集合(mySelection)中,我們還可以操縱該集合以編程方式選擇/取消選擇行。 除了保留鍵之外,還可以保留整個對象,它們代表所選數據項(將kendoGridSelectBy綁定到將返回eventArgs.dataItem的函數)。
您正在使用錯誤的網格事件。 您應該使用selectedKeysChange
<kendo-grid ...
[kendoGridSelectBy]="'id'"
(selectedKeysChange)="selectedKeysChange($event)">
...
</kendo-grid>
另外,您必須設置用於選擇行的字段( kendoGridSelectBy
)。 在此示例中,它是ID。
得到選擇:
selectedKeysChange(rows: number[]) {
console.log(rows);
}
將[selectable] =“ true”更改為:
[selectable] =“ {啟用:true,模式:“多個”}”
當我添加模式:“多”時,我能夠獲得列表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.