最近客户希望能直接打印页面中表格数据,不想导到Excel中再打印,以减少操作步骤,提高效率,直接调用的浏览器的打印功能显示满足不了客户需求,后来找到了一个jquery的打印插件jQuery.print.js。
代码如下:
// 注入公共打印按钮,可以打印当前页面中表格数据
function printDataBtn() {
var columnNameArray, dict, tbl_data,
tblStore = $("#" + CURR_CONTAINER).DataDisplayTable("getDataStore");
// 获取字段对应字典数据
dict = tblStore["datadisplay-dict"];
tblTitle = tblStore['datadisplay-templet-title'];
if (this.currentTempletViewType != this.TEMPLATE_CLASS_CROSS) {
// 获取表格列名数组
columnNameArray = tblStore['datadisplay-in-use-columns'];
// 对非行专列模板,需要从服务器端取数据。
$.ajax({
url: '/syscan/model/business/listbycondpaging',
data: JSON.stringify({
templateId: tblStore['datadisplay-query-params'].templateId,//功能模板id
pagingInfo: {
pageSize: '10000',
pageNo: '1'
},
searchCondition: tbl