打印特定的div和表

时间:2014-05-01 20:45:38

标签: jquery html css

我现在的代码是:

function printPage() {
    var prtContent = document.getElementById("data");
    alert(prtContent.toSource());
    var WinPrint = window.open('', '', 'letf=0,top=0,width=800,height=900,toolbar=0,scrollbars=0,status=0');
    WinPrint.document.write(prtContent.innerHTML);
    WinPrint.document.close();
    WinPrint.focus();
    WinPrint.print();
    WinPrint.close();
}

现在打印的div是数据。在数据中有一个表格,但是当我尝试打印时,它不会显示为表格。如何将其编码以打印表格?

我的第二个问题是我有另一个名为title的div。其中我也想打印在桌子上方。真的希望有人可以帮助我。

最佳答案:

因此,最好和最简单的方法是创建一个打印css文件并将其链接到您的页面中,例如在标题中使用:

<link rel="stylesheet" type="text/css" href="print.css" media="print">

Css文件示例:

.class, #divId { display:none; }

检查您是否申请正确的div ID或类名的最简单方法是检查浏览器中的css设备并在那里添加css规则。

2 个答案:

答案 0 :(得分:2)

这是一种更好的方法

<link rel="stylesheet" type="text/css" href="print.css" media="print">

在css中隐藏`display:none&#39;在你不想打印和展示的一切上 这就像一个魅力。

答案 1 :(得分:1)

要回答第二个问题,您只需要添加几行。

function printPage() {
    var prtContent = document.getElementById("data");
    alert(prtContent.toSource());
    var WinPrint = window.open('', '', 'letf=0,top=0,width=800,height=900,toolbar=0,scrollbars=0,status=0');

    //Add these two lines 
    var titleDiv = document.getElementById("title");    
    WinPrint.document.write(titleDiv.outerHTML);

    WinPrint.document.write(prtContent.innerHTML);
    WinPrint.document.close();
    WinPrint.focus();
    WinPrint.print();
    WinPrint.close();
}