zoukankan      html  css  js  c++  java
  • easyui基于web的打印实现 .

    <%@ page language="java"pageEncoding="UTF-8"%>

    <object id="WebBrowser"classid="ClSID:8856F961-340A-11D0-A96B-00C04Fd705A2"width="0" height="0">

    </object>

    <script language="javascript"type="text/javascript">

    var tableString = "<linkrel='stylesheet' type='text/css' href='Lodop/print.css' /><tablecellspacing='0;' id='PrintBody'>";

    function doPrint()

    {

          tableString += "<scriptlanguage='javascript'>window.print();</s"+"cript>";

          // tableString.insertAdjacentHTML("beforeBegin","<scriptlanguage='javascript'>window.print();</s"+"cript>")

          document.open('','','height=500,width=611,scrollbars=yes,status =yes');

         document.write(tableString);

          document.close();

    }

     

    // strPrintName 打印任务名

    // printDatagrid 要打印的datagrid

    function CreateFormPage(strPrintName, printDatagrid) {

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

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

     

        // 载入title

        tableString = tableString + " <tr>";

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

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

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

                  tableString = tableString + " <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 + " <th width= '" +columns[0][i].width  +"'>" + columns[0][i].title + "</th>";

               }

           }

        }

        tableString = tableString + " </tr>";

     

        // 载入内容

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

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

           tableString = tableString + " <tr>";

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

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

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

                      tableString = tableString + " <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 + " <td >" + rows[j][columns[0][i].field] + "</td>";

                  }

               }

           }

           tableString = tableString + " </tr>";

        }

        tableString = tableString + " </table>";

        doPrint();

    }

     

    </script>

     

     

     

     

    使用方法: jsp页面中

    <jsp:include page="../../../Lodop/print2.jsp"></jsp:include>

    Js页面中

    function prn_preview() {

        CreateFormPage("核销账款明细", stockDocumentDatagrid);

    };

    第一个参数是单据名称; 第二个是要打印的datagrid对象

  • 相关阅读:
    jQuery的deferred对象详解
    2016.7.15见闻
    如何在win7下配置IIS?
    对于transform的新认识
    移动前端工作的那些事---前端制作之微信小技巧篇
    css改变图片的颜色
    对promise的简单理解
    小程序打印饼图报错VM6541:1 thirdScriptError Converting circular structure to JSON;
    小程序使用echarts 在一个页面打印多个饼图的坑
    小程序使用wx.navigateTo无法跳转到加了tabBar的页面
  • 原文地址:https://www.cnblogs.com/rainbowzc/p/3613737.html
Copyright © 2011-2022 走看看