内置按钮
如果你希望定义自定义按钮或使用另一扩展中的按钮(如Editor),则 Buttons 框架很有用,但其实用性很大程度上由库中包含的按钮类型增强。
这些按钮不是核心库的一部分,而是可以根据需要包含的单独文件。例如,你可能希望提供 HTML5 文件导出按钮,而不提供 Flash 导出按钮。这仅仅确保仅将你需要代码传递给最终用户。
Buttons 中包含三种按钮类型
- 文件导出
- 打印
- 列可见性
文件导出
在数据表中显示数据时,你的最终用户通常能够从数据表中获取数据,将其提取到文件以便在本地使用,这可能会很有用。这可以使用基于 HTML5 的按钮或 Flash 按钮来完成。
Buttons 有四个内置的按钮类型,它们将自动检测浏览器的功能和可用的软件 - 如果可能的话,它们将自动使用 HTML5 按钮,退回到 Flash,最后如果任何要求都无法满足,则根本不会显示
HTML5
最新的浏览器(IE10+ 和常用浏览器)其能力有了长足的进步,而创建本地文件是大多数现在都能做得很好的事情。因此,有四种可用的按钮类型(建议你优先使用上面记录的通用按钮,而不是这些按钮)
copyHtml5
- 显示一个对话框,要求用户使用他们浏览器的复制命令(HTML5 没有复制到剪贴板的 API)csvHtml5
- 创建并保存一个 CSV 文件excelHtml5
- 创建并保存一个 Excel XLSX 文件 - 这需要 JSZip。注意 - 这将无法在 Safari 中使用。pdfHtml5
- 创建并保存一个 PDF 文档 - 这需要 PDFMake 和一个合适的字体文件。
Flash
旧浏览器没有在本地创建文件的能力 - 为了为这些浏览器提供支持,提供了文件导出选项的 Flash 版本。
这些按钮的优势在于,除了 Flash 以外,它们没有第三方依赖关系。这些按钮的缺点在于,它们需要 Flash。
copyFlash
- 立即将数据复制到剪贴板csvFlash
- 创建和保存一个 CSV 文件excelFlash
- 创建和保存一个 Excel XLSX 文件pdfFlash
- 创建和保存一个 PDF 文档。注意 - 这不支持 UTF8 字符。
打印
从表格中提取数据的一个最常见的方法是打印它。 print
按钮类型通过在用户浏览器中打开一个新窗口,绘制一个包含原始表格中数据的副本来实现此功能。
然后,它在默认情况下自动触发浏览器的打印功能,允许最终用户打印表格。打印完成后或已取消,窗口将关闭。
列可见性
尽管上面描述的按钮主要专注于从表格中提取数据,但列可见性按钮却控制表格的显示。它们提供了按钮,可用于切换各列、列组的可见性,或明确设置列的可见性。
最常用的是 colvis
类型。这显示了一个 collection
按钮,其中包含表格中的所有列的列表(可以自定义),最终用户能够通过单击切换列的可见性。
此模块取代了现在已弃用的 DataTables 扩展 ColVis。