做了幾天報表,看CrystalReport有自動列印和匯出功能,沒咋關鍵細節。今天想著在網頁上點個按鈕就能實現列印當前頁面不是更靈活。所以做了下面這個東西。
代碼附上,主要是document.execCommand("print");
<script type="text/javascript" language="javascript"> function myPrint() { var table = document.getElementById("XXXTable"); var printDiv = table.parentElement; var printWindow = window.open("about:blank", "newwindow", "top=20,left=20,width=1024,height=768,toolbar=no,scrollbars=yes,menubar=no,resizable=no,dependent=yes,alwaysLowered=yes"); var headInnerHTML = document.getElementsByTagName("HEAD")[0].innerHTML; var bodyInnerHTML = printDiv.innerHTML; printWindow.document.write("<html><br/><head><br/>" + headInnerHTML + "<style type=\"text/css\">" + ".DocumentTitleDiv{border-bottom:none;font-size:30px;}" + "#header{margin-bottom: -10px;}#footer{margin-top: 15px;}" + "td{font-size:12px;height:26px;}.DocumentFooterDiv td{font-size:16px;font-weight:bold;}</style>" + "</head>" + bodyInnerHTML + "<body>" + "</body></html>"); printWindow.document.execCommand("print"); printWindow.close(); } </script>