{hero}

buttons.exportData()

自:按钮 1.0.0

从适合导出的 DataTable 中获取数据。
请注意 - 此属性需要 DataTables 的 按钮 拓展。

描述

通常希望使用按钮从 DataTable 中获取数据,以便以某种形式导出(复制到剪贴板、保存到 Excel 等)。由于多个插件按钮类型可能需要此操作,因此 Buttons 为 DataTables 提供此方法,以便快速轻松地从 DataTable 中获取适合导出的形式的数据。

从本质上讲,此方法将返回一个对象,其中包含表格的页眉、页脚和正文信息。然后由调用者决定如何导出该数据 - 例如,对于 CSV 文件,可以使用逗号将每行的项目连接起来,然后使用新行将行连接起来。

从 Buttons 1.5.0 开始,此方法导出的数据将自动尝试确定表格中是否有任何行被选中。如果选中,导出将仅限于这些行。如果未选中任何行,则将导出完整的数据集。

如果你不想要此行为,可将 modifier 对象的 selected 选项设置为 null。它会将所有行包括在导出中,而不考虑是否有任何行被选中。同样,如果你想强制导出仅包含选定的行,即使未选中任何行(即没有行会导出),可将此参数设置为 true

类型

函数 buttons.exportData( [ 选项 ] )

描述

通过保存到文件或复制到剪贴板从适合导出的 DataTable 中获取数据。

参数
返回

具有三个参数的对象

  • header - 选定列的标题数据数组
  • footer - 选定列的页脚数据数组
  • body - 数组数组,每个内部数组分别表示一个行,其项为选定列的单元格。

示例

导出表格中的所有数据

var table = new DataTable('#myTable');

var data = table.buttons.exportData();
// Do something with the 'data' variable

仅导出选定行(带 Select 扩展)

var table = new DataTable('#myTable');

var data = table.buttons.exportData({
	modifier: {
		selected: true
	}
});
// Do something with the 'data' variable

仅获取可见列的数据

var table = new DataTable('#myTable');

var data = table.buttons.exportData({
	columns: ':visible'
});
// Do something with the 'data' variable

格式化标题单元格 - 添加列索引

var table = new DataTable('#myTable');

var data = table.buttons.exportData({
	format: {
		header: function (data, columnIdx) {
			return columnIdx + ': ' + data;
		}
	}
});
// Do something with the 'data' variable