Button show a printable view of the table's data.
Please note - this property requires the Buttons extension for DataTables.
Description
The print view button will take a copy of the data displayed in a table (based on the selector options given in the exportOptions
parameter) and construct a new, temporary, table that is shown in a new window. The browser's print
command is then automatically invoked (although this can be disabled - see the autoPrint
option below) and finally the window closed when the print action has been completed or cancelled by the end user.
The constructed table does not retain the full information from the original table (table row and cell classes are not copied across for example), but the stylesheets from the original document are copied to the print document so the basic styling of the table can be retained.
Customisation of the printed view is available through the title
and message
options for simple description strings and through the customize
option for complete control over the generated document (allowing, for example images to be added, etc).
Please note that the print button will set the decodeEntities
option of buttons.exportData()
to false
to prevent XSS attacks.
Options
This button can have the following options set in its configuration object to customise its actions and display, in addition to those options which are available for all buttons (e.g. buttons.buttons.text
):
Name | Type | Default |
---|---|---|
action | ||
Show the print view | ||
autoPrint | true | |
Indicate if the browser's
| ||
className | buttons-print | |
The button's class name. See | ||
customScripts | null | |
An array of URLs pointing to scripts that should be included in the print view document. This can be useful for including additional libraries that are required for the document to be displayed correctly. Function that is executed when the window that contains the print view document has been displayed. | ||
customize | null | |
Function that is executed when the window that contains the print view document has been displayed. As of Buttons 1.5.2 this function is passed three parameters:
No return value is expected or acted upon. | ||
exportOptions | {} | |
Select the data to be gathered from the DataTable for export. This includes options for which columns, rows, ordering and search. Please see the | ||
footer | true | |
Indicate if the table footer should be included in the print view or not. Please note that the default for this parameter was updated in Buttons 3.0.1 to be | ||
header | true | |
Indicate if the table header should be included in the print view or not. | ||
message | ||
Description message that can be shown in the print view document. This can include HTML. As well as a string value, a function may also be assigned to the
| ||
messageBottom Since: 1.4.0 | * | |
Message to be shown at the bottom of the table, or the | ||
messageTop Since: 1.4.0 | * | |
Message to be shown at the top of the table, or the | ||
text | ||
The button's display text. The text can be configured using this option (see | ||
title | * | |
Title of the table that will be included in the exported data. Please see |
Examples
DataTables initialisation: Show a print button:
new DataTable('#myTable', {
layout: {
topStart: {
buttons: ['print']
}
}
});
DataTables initialisation: Disable auto display of the print dialogue box:
new DataTable('#myTable', {
layout: {
topStart: {
buttons: [
{
extend: 'print',
text: 'Print current page',
autoPrint: false
}
]
}
}
});
DataTables initialisation: Use the exportOptions
to print only the current DataTable page:
new DataTable('#myTable', {
layout: {
topStart: {
buttons: [
{
extend: 'print',
text: 'Print current page',
exportOptions: {
modifier: {
page: 'current'
}
}
}
]
}
}
});