表格打印
Bootstrap 表格的表格打印扩展。
在工具栏中添加一个按钮,用于以预定义的可配置格式打印表格。
使用
<script src="extensions/print/bootstrap-table-print.js"></script>
示例
选项
showPrint
-
属性:
data-show-print
-
类型:
Boolean
-
详情
设置为
true
以在工具栏上显示打印按钮。 -
默认值:
false
printAsFilteredAndSortedOnUI
-
属性:
data-print-as-filtered-and-sorted-on-ui
-
类型:
Boolean
-
详情
设置为
true
以按 UI 上已排序和筛选的方式打印表格。如果设置为true
,则筛选和排序的显式预定义打印选项 (printFilter
、printSortOrder
、printSortColumn
) 将适用。它们将应用于 UI 控件已筛选和排序的数据。对于打印按 UI 筛选和排序的数据,请勿设置以下三个选项:printFilter
、printSortOrder
、printSortColumn
。 -
默认值:
true
printPageBuilder
-
属性:
data-print-page-builder
-
类型:
Function
-
详情
接收 HTML
<table>
元素作为字符串参数,返回用于打印的 HTML 字符串。此选项用于样式设置以及添加页眉或页脚。 -
默认值
printPageBuilder: function(table, styles) {
return `
<html>
<head>
${styles}
<style type="text/css" media="print">
@page {
size: auto;
margin: 25px 0 25px 0;
}
</style>
<style type="text/css" media="all">
table {
border-collapse: collapse;
font-size: 12px;
}
table, th, td {
border: 1px solid grey;
}
th, td {
text-align: center;
vertical-align: middle;
}
p {
font-weight: bold;
margin-left:20px;
}
table {
width: 94%;
margin-left: 3%;
margin-right: 3%;
}
div.bs-table-print {
text-align: center;
}
</style>
</head>
<title>Print Table</title>
<body>
<p>Printed on: ${new Date} </p>
<div class="bs-table-print">${table}</div>
</body>
</html>
`
}
printSortColumn
-
属性:
data-print-sort-column
-
类型:
String
-
详情
设置要按其排序的列字段名称,用于打印的表格。
-
默认值:
undefined
printSortOrder
-
属性:
data-print-sort-order
-
类型:
String
-
详情
有效值:‘asc’、‘desc’。仅当
printSortColumn
已设置时才相关。 -
默认值:
'asc'
printStyles
-
属性:
data-print-styles
-
类型:
Array
-
详情
在打印页面中添加样式,例如自定义图标。
-
默认值:
[]
图标
- print:
'fa-print'
列选项
printFilter
-
属性:
data-print-filter
-
类型:
String
-
详情
设置要按此列筛选打印数据的 value。
-
默认值:
undefined
printFormatter
-
属性:
data-print-formatter
-
类型:
Function
-
详情
自定义
function(value, row, index)
- 返回字符串。格式化打印表格中此列的单元格值。函数行为类似于 ‘formatter’ 列选项。 -
默认值:
undefined
printIgnore
-
属性:
data-print-ignore
-
类型:
Boolean
-
详情
设置为
true
以在打印页面上隐藏此列。 -
默认值:
false
本地化
formatPrint
-
类型:
Function
-
默认值:
function () { return "Print" }