2

我在 PHP 页面中有一个表格。这是一张发票。所以我想在添加项目后打印它,我已经完成了编码部分,所有的东西都工作正常。

现在我只想按一个按钮将该发票表打印到纸上。我在谷歌上搜索,但没有发现这样做的线索。

谁能帮我?

这是我右手边的桌子。它由左侧的表格填充,所以我只想打印右侧的表格:

在此处输入图像描述

4

4 回答 4

6

试试这个:

id向表中添加属性your_content

放置一个锚标签:

   <a href="javascript:void(0);" id="printPage">Print</a> 

并添加脚本:

此脚本最初将显示表格内内容的打印预览。

 <script lang='javascript'>
 $(document).ready(function(){
  $('#printPage').click(function(){
        var data = '<input type="button" value="Print this page" onClick="window.print()">';           
        data += '<div id="div_print">';
        data += $('#your_content').html();
        data += '</div>';

        myWindow=window.open('','','width=200,height=100');
        myWindow.innerWidth = screen.width;
        myWindow.innerHeight = screen.height;
        myWindow.screenX = 0;
        myWindow.screenY = 0;
        myWindow.document.write(data);
        myWindow.focus();
    });
 });

复制脚本部分并将其放在页面顶部。并将打印链接,[在锚标签上方]放在任何你想要的地方。并确保您已包含 jquery 脚本文件。

于 2012-07-22T04:57:20.770 回答
6

这对于像 jQuery 这样的东西来说太微不足道了,所以你应该使用纯 Javascript 来完成它。把它放在你页面的某个地方,看看它是否有效:

<a href="javascript:void(0);" onclick="printPage();">Print</a> 

<script type="text/javascript">
 function printPage(){
        var tableData = '<table border="1">'+document.getElementsByTagName('table')[0].innerHTML+'</table>';
        var data = '<button onclick="window.print()">Print this page</button>'+tableData;       
        myWindow=window.open('','','width=800,height=600');
        myWindow.innerWidth = screen.width;
        myWindow.innerHeight = screen.height;
        myWindow.screenX = 0;
        myWindow.screenY = 0;
        myWindow.document.write(data);
        myWindow.focus();
    };
 </script>​​​​​​

你可以在这里看到演示:http: //jsfiddle.net/Pxqtb/

于 2012-07-22T06:11:04.713 回答
2

我使用了这段代码,它解决了我的问题。谢谢大家帮助我......

function printlayout() {
     var data = '<input type="button" value="Print this page" onClick="window.print()">';           
       var DocumentContainer = document.getElementById('printlayout');
        //data += $('printlayoutable').html();
        //data += '</div>';
var WindowObject = window.open('', "TrackHistoryData", 
                              "width=740,height=325,top=200,left=250,toolbars=no,scrollbars=yes,status=no,resizable=no");           
 WindowObject.document.writeln(DocumentContainer.innerHTML);
  //WindowObject.document.writeln(DocumentContainer.innerHTML);
        WindowObject.document.close();
        WindowObject.focus();
        WindowObject.print();
        WindowObject.close();
于 2012-07-22T07:03:34.873 回答
1

你有几个选择。(1) 如果您创建一个仅包含发票的新 HTML 页面,用户可以使用浏览器的打印能力打印该页面。(2) 或者,您可以允许用户下载您创建并打印的发票文档。(3) 可以window.print();结合#1 使用JavaScript 命令。看看这个

于 2012-07-22T04:48:38.643 回答