kendo-ui 打印选定的行远程服务
kendo-ui print selected rows remote service
我遵循了此处概述的文章:https://docs.telerik.com/kendo-ui/knowledge-base/grid-pdf-export-selected-rows-only
但是这篇文章没有说明服务器端分页。在我的网页中,我像示例一样设置网格,唯一的例外是我使用的是服务器端分页。我单击“导出为 PDF”按钮,网页上的网格隐藏了未选中的行,它生成并保存了 PDF,然后未选中的行再次在网页上可见。所不同的是,一旦我打开PDF文档,未选中的行都在文档中可见。
最后,我最终做的是遍历所有选定的记录,将它们的唯一 ID 推送到过滤器,并在我的数据源的读取传输中检查是否设置了一个标志,指示数据源正在按时读取到正在导出的网格。如果设置了标志,那么我将我的唯一 ID 过滤器传递给请求。
pdfExport: function (e) {
if (!isExportingPdf) {
e.sender.hideColumn(1); // selectable column
isExportingPdf = true;
filter.Ids = Object.keys(e.sender._selectedIds).join(",");
e.promise.done(function () {
e.sender.showColumn(1);
isExportingPdf = false;
delete filter.Ids;
_dataSource.read();
});
}
}
我遵循了此处概述的文章:https://docs.telerik.com/kendo-ui/knowledge-base/grid-pdf-export-selected-rows-only
但是这篇文章没有说明服务器端分页。在我的网页中,我像示例一样设置网格,唯一的例外是我使用的是服务器端分页。我单击“导出为 PDF”按钮,网页上的网格隐藏了未选中的行,它生成并保存了 PDF,然后未选中的行再次在网页上可见。所不同的是,一旦我打开PDF文档,未选中的行都在文档中可见。
最后,我最终做的是遍历所有选定的记录,将它们的唯一 ID 推送到过滤器,并在我的数据源的读取传输中检查是否设置了一个标志,指示数据源正在按时读取到正在导出的网格。如果设置了标志,那么我将我的唯一 ID 过滤器传递给请求。
pdfExport: function (e) {
if (!isExportingPdf) {
e.sender.hideColumn(1); // selectable column
isExportingPdf = true;
filter.Ids = Object.keys(e.sender._selectedIds).join(",");
e.promise.done(function () {
e.sender.showColumn(1);
isExportingPdf = false;
delete filter.Ids;
_dataSource.read();
});
}
}