如何在ng2-smart-table

时间:2018-10-22 18:02:09

标签: angular angular6 ng2-smart-table

我正在使用ng2-smart-table模块以网格格式显示数据。我想将过滤后的数据导出到xls文件中。

具有值和第一列的表是复选框,过滤一个列数据并获得10行,之后单击标题中的select all复选框,选择所有10行(选中所有10行),然后单击在“导出”按钮上,xls文件中只能包含10个行值。但是我的xls文件具有来自数据库的所有数据值。

1 个答案:

答案 0 :(得分:1)

尝试这种方式

第一种方法:

通过这种方式,您只需设置自定义复选框并获取事件即可。

import { DomSanitizer } from '@angular/platform-browser';
...
constructor(private _sanitizer: DomSanitizer) { }
...
public settings = {
  columns: {
   checkbox: {
    title: 'Check Box',
    type: 'html',
    valuePrepareFunction: (value) => { return this._sanitizer.bypassSecurityTrustHtml(this.input); },
    filter: false
   },
 }
};
...
public input: string = '<input type="checkbox"></input>';

第二种方式:

对于文档,您将可以通过在userRowSelect中实施ng2-smart-table来获取选定的行数据。

<ng2-smart-table [settings]="settings" [source]="source" (userRowSelect)="onUserRowSelect($event)"></ng2-smart-table>

在您的.ts文件中,只需实现onUserRowSelect()并存储在数组中即可。

onUserRowSelect(event): void {
    console.log("Row is ::: ",event);
}

有关信息,请阅读此events