仅打印<div> content </div>的某些部分

时间:2014-11-11 13:58:48

标签: javascript html mysql printing html-table

我有以下JavaScript代码来打印内容

<script type="text/javascript">

    function Print(print)
    {
        Popup($(print).html());
    }

    function Popup(data) 
    {
        var mywindow = window.open("", "print");
        mywindow.document.write("<html><head><title>Report</title>");
        mywindow.document.write("</head><body>");
        mywindow.document.write("<div align='center'>");
        mywindow.document.write(data);
        mywindow.document.write("</div>");
        mywindow.document.write("</body></html>");

        mywindow.print();
        mywindow.close();

        return true;    }

</script>

在我的HTML中,我有以下代码:

   <html>
    <body>
    <p><a href="javascript:Print('#print')">Print</a></p>
    <div id="print">
    <h1>Report</h1>
    <table>
    <tr><th>Date</th><th>Remarks</th><th>Amount</th><th>Actions</th></tr>
    <tr>
    <td>10/11/2014</td>
    <td>Hello</td>
    <td>$14</td>
    <td>Edit</td>
    </tr>
    </table>
    </div>
</body>
</html>

我想只打印前3列。我不想打印第4栏&#34;行动&#34;。当我尝试使用上面的代码打印出内容时,它会打印所有4列。请帮我处理以下内容。

2 个答案:

答案 0 :(得分:0)

你可以用jquery做到这一点。

$(document).ready(function(){
    $('.tabel').find(':nth-child(4)').hide();
});

JSFIDDLE HERE

答案 1 :(得分:0)

您可以简单地将样式显示为no,并为该td&#39;

提供id

内部HTML:

....
<th id="act">Actions</th>
....
<td id="act">Edit</td>

JS内部:

mywindow.document.write("<html><head><style>#act{display:none;}</style><title>Report</title>");