码迷,mamicode.com
首页 > 其他好文 > 详细

easyui datagrid打印

时间:2015-08-05 12:57:18      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

具体思路就在js文件里封装一个函数 将datagri列表里的内容 写入到一个新打开的窗口中 以表格的形式写入 然后在设置字体样式

进行打印 ,在新窗口中打开可以作为预览功能。由于需要数据库获取 所以采取这一种方式:

js文件内容如下


var tableString="<html><head><link rel=‘stylesheet‘ type=‘text/css‘ href=‘css/table_print.css‘/></head><body><table cellspacing=‘0‘  id=‘PrintBody‘ border=‘1‘  >";


function doPrint(){
 
         
       tableString += "<script language=‘javascript‘>window.print();</s"+"cript>";

    

      win = document.open(‘‘,‘‘,‘height=1000,width=1200,scrollbars=yes,status =yes‘);

      win.document.write(tableString);
      tableString="<html><head><link rel=‘stylesheet‘ type=‘text/css‘ media=‘print‘ href=‘./css/print.css‘/></head><body><table cellspacing=‘0‘  id=‘PrintBody‘ border=‘1‘ style=‘font-size:12px‘ >";

      win.document.close();
     
     
 }


function CreateFormPage(strPrintName, printDatagrid) {

    var frozenColumns = printDatagrid.datagrid("options").frozenColumns;  // 得到frozenColumns对象

    var columns = printDatagrid.datagrid("options").columns;    // 得到columns对象

 

    // 载入title

    tableString = tableString + "\n<tr>";

    if(frozenColumns != undefined && frozenColumns != ‘‘) {

       for(var i = 0;i<frozenColumns[0].length; i++) {

           if(frozenColumns[0][i].hidden != true) {

              tableString = tableString + "\n<th width= ‘" +frozenColumns[0][i].width  +"‘>" + frozenColumns[0][i].title + "</th>";

           }

       }

    }

    if(columns != undefined && columns != ‘‘) {

       for(var i = 0;i<columns[0].length; i++) {

           if(columns[0][i].hidden != true) {

              tableString = tableString + "\n<th width= ‘" +columns[0][i].width  +"‘>" + columns[0][i].title + "</th>";

           }

       }

    }

    tableString = tableString + "\n</tr>";

 

    // 载入内容

    var rows = printDatagrid.datagrid("getRows"); // 这段代码是获取当前页的所有行。

    for(var j = 0; j <rows.length;j++) {

       tableString = tableString + "\n<tr>";

       if(frozenColumns != undefined && frozenColumns != ‘‘) {

           for(var i = 0;i<frozenColumns[0].length; i++) {

              if(frozenColumns[0][i].hidden != true) {

                  tableString = tableString + "\n<td >" + rows[j][frozenColumns[0][i].field] + "</td>";

              }

           }

       }

       if(columns != undefined && columns != ‘‘) {

           for(var i = 0;i<columns[0].length; i++) {

              if(columns[0][i].hidden != true) {

                  tableString = tableString + "\n<td>" + rows[j][columns[0][i].field] + "</td>";

              }
             

           }

       }

       tableString = tableString + "\n</tr>";

    }

    tableString = tableString + "\n</table></body></html>";
   

    doPrint();

}


网页中直接可以调用//打印报表 章柄交接统计表
 function startPrint(){
     CreateFormPage("gac",$("table_id"));
 }



 <a href="#" class="easyui-linkbutton" plain="true" data-options="iconCls:‘icon-print‘" onclick="startPrint()">打印</a>




版权声明:本文为博主原创文章,未经博主允许不得转载。

easyui datagrid打印

标签:

原文地址:http://blog.csdn.net/gaoanchen/article/details/47294139

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!