FineUI 官方论坛

标题: LODOP打印问题 [打印本页]

作者: 南柯长梦    时间: 2014-12-24 14:51
标题: LODOP打印问题
小弟新手一枚,最近想做个厂区调拨单的打印,看大家推荐的LODOP,就尝试了一下,可就是获取不到form中控件的样式。
请问各位大侠,是不是CSS的问题,我该怎么处理啊?
求指教,代码如下:
  1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Cqdbdcx.aspx.cs" Inherits="AppBox.admin.erp_data.Cqdbdcx" %>

  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head runat="server">
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  6.     <title>-1</title>
  7.     <link href="../css/main.css" rel="stylesheet" type="text/css" />
  8.     <style type="text/css">
  9.         .label_title {
  10.             font-size:x-large;
  11.             text-align:center;
  12.             font-weight:bold;
  13.         }
  14.         .x-grid3-row .x-grid3-cell-inner
  15.         {
  16.             white-space: normal;
  17.             padding: 10px 5px;
  18.             
  19.         }
  20.         .x-grid3-hd {
  21.             text-align:center;
  22.         }
  23.     </style>
  24.     <script type="text/javascript" language="javascript" src="/res/js/LodopFuncs.js"></script>
  25.     <object id="LODOP_OB" classid="clsid:2105C259-1E0C-4534-8141-A753534CB4CA" width="0" height="0">
  26.         <embed id="LODOP_EM" type="application/x-print-lodop" width=0 height=0></embed>
  27.     </object>
  28. </head>
  29. <body>
  30.     <script type="text/javascript" language="javascript">
  31.         var LODOP = getLodop(document.getElementById('LODOP_OB'), document.getElementById('LODOP_EM'));
  32.     </script>
  33.     <form id="form1" runat="server">
  34.         <div id="div_dbd">
  35.         <x:PageManager ID="PageManager1" runat="server" />
  36.         <x:Form ID="form_dbd" Title="厂区调拨单" LabelAlign="left" BodyPadding="5px"
  37.             ShowHeader="false" Width="800px" runat="server" ShowBorder="false">
  38.             <Toolbars>
  39.                 <x:Toolbar runat="server" Position="Bottom">
  40.                     <Items>
  41.                         <x:Button ID="btn_print" OnClientClick="javascript:prn_preview()" Text="打印" runat="server"></x:Button>
  42.                     </Items>
  43.                 </x:Toolbar>
  44.             </Toolbars>
  45.             <Rows>
  46.                 <x:FormRow ID="FormRow_title" runat="server">
  47.                     <Items>
  48.                         <x:Label ShowLabel="false" CssClass="label_title" ID="Label_title" Text="厂区调拨单" runat="server"></x:Label>
  49.                     </Items>
  50.                 </x:FormRow>
  51.             </Rows>
  52.             <Rows>
  53.                 <x:FormRow ID="FormRow1" runat="server">
  54.                     <Items>
  55.                         <x:Label ID="Label_bcck" Label="拨出仓库" Text="辅料仓-SF-M20" runat="server"></x:Label>
  56.                         <x:Label ID="Label_djbh" Label="单据编号" runat="server"></x:Label>
  57.                         <x:Label ID="Label_dbrq" Label="调拨日期" runat="server"></x:Label>
  58.                     </Items>
  59.                 </x:FormRow>
  60.             </Rows>
  61.             <Rows>
  62.                 <x:FormRow ID="FormRow2" runat="server">
  63.                     <Items>
  64.                         <x:Label ID="Label_jsck" Label="接收仓库" runat="server"></x:Label>
  65.                         <x:Label ID="Label_bz" Label="备  注" Text="" runat="server"></x:Label>
  66.                         <x:Label ID="Label_hidden" runat="server" Hidden="true"></x:Label>
  67.                     </Items>
  68.                 </x:FormRow>
  69.             </Rows>
  70.             <Rows>
  71.                 <x:FormRow ID="Form_gird" runat="server">
  72.                     <Items>
  73.                         <x:Grid ID="Grid_wl" AutoHeight="true" ShowHeader="false" runat="server" Height="300px">
  74.                             <Columns>
  75.                                 <x:BoundField DataField="" HeaderText="物料编码" Width="120px" />
  76.                                 <x:BoundField DataField="" HeaderText="物料名称" Width="150px" />
  77.                                 <x:BoundField DataField="" HeaderText="规格型号" ExpandUnusedSpace="true" />
  78.                                 <x:BoundField DataField="" HeaderText="计量" TextAlign="Center" Width="50px" />
  79.                                 <x:BoundField DataField="" HeaderText="数量" TextAlign="Center" Width="80px" />
  80.                                 <x:BoundField DataField="" HeaderText="说明" Width="120px" />
  81.                             </Columns>
  82.                         </x:Grid>
  83.                     </Items>
  84.                 </x:FormRow>
  85.             </Rows>
  86.             <Rows>
  87.                 <x:FormRow ID="FormRow_buttom" runat="server">
  88.                     <Items>
  89.                         <x:Label ID="Label_bmzg" Label="部门主管" runat="server">
  90.                         </x:Label>
  91.                         <x:Label ID="Label_fhr" Label="发货人" runat="server">
  92.                         </x:Label>
  93.                         <x:Label ID="Label_jsr" Label="接收人" runat="server">
  94.                         </x:Label>
  95.                         <x:Label ID="Label_mw" Label="门卫" runat="server"></x:Label>
  96.                     </Items>
  97.                 </x:FormRow>
  98.             </Rows>

  99.         </x:Form>
  100.             </div>
  101.     </form>
  102.     <script language="javascript" type="text/javascript">
  103.             function prn_preview() {
  104.                 LODOP.PRINT_INIT("厂区调拨单打印");
  105.                 LODOP.ADD_PRINT_HTML(20, 5, 800, 600,document.getElementById("form_dbd").innerHTML);
  106.                 LODOP.PREVIEW();
  107.             };
  108.     </script>
  109. </body>
  110. </html>
复制代码



作者: 南柯长梦    时间: 2014-12-25 09:29
是我的问题太低端了么。。。怎么没人愿意搭理我,快帮帮我啊
作者: 夏雨雪(joe)    时间: 2014-12-27 09:33
要把css样式和打印内容一起,传递给打印
作者: 南柯长梦    时间: 2014-12-29 09:34
夏雨雪(joe) 发表于 2014-12-27 09:33
要把css样式和打印内容一起,传递给打印

CSS里的样式可以传递,主要问题是fineui的控件样式得不到啊,formrow里的都成竖排了。。。
作者: 夏雨雪(joe)    时间: 2015-1-4 08:07
您直接把<head></head>里面的内容和body的内容一起传给打印控件,可以显示fineui的样式界面的
作者: 夏雨雪(joe)    时间: 2015-1-4 08:08
finui的样式会动态添加到header里面,所以要在打印的时候,用js获取header里面的内容
作者: 南柯长梦    时间: 2015-1-5 10:50
夏雨雪(joe) 发表于 2015-1-4 08:08
finui的样式会动态添加到header里面,所以要在打印的时候,用js获取header里面的内容 ...

我明白了,非常感谢您的帮助
作者: 若一    时间: 2015-2-6 15:49
南柯长梦 发表于 2015-1-5 10:50
我明白了,非常感谢您的帮助

怎么解决的,我的跟你一样

能否这个页面的代码发一份给我看看 谢谢
作者: 南柯长梦    时间: 2015-2-27 13:39
若一 发表于 2015-2-6 15:49
怎么解决的,我的跟你一样

能否这个页面的代码发一份给我看看 谢谢
  1. <script language="javascript" type="text/javascript">
  2.             function prn_preview() {
  3.                 LODOP.PRINT_INIT("厂区调拨单打印");
  4.                 var strheadStyle = "<head>" + document.getElementById("head1").innerHTML + "</head>";
  5.                 var strFormHtml = strheadStyle + document.getElementById("form_dbd").innerHTML;
  6.                 LODOP.ADD_PRINT_HTML(60, 0, 800, 600, strFormHtml);
  7.                 LODOP.PREVIEW();
  8.             };
  9. </script>
复制代码

主要是这段:
var strheadStyle = "<head>" + document.getElementById("head1").innerHTML + "</head>";
把fineui的样式都传过去,
作者: 若一    时间: 2015-3-4 16:49
谢谢啦,已搞出来了
作者: Rui_a9eX1    时间: 2021-1-30 15:40
我也希望可以做个打印示例。




欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4