我在 Joomla 有一个订票系统。
当用户点击票链接时,网站上会显示一张票。
我正在使用barcode.php文件生成票号的条形码图像。
现在有两个我用来打印票的场景。
当我使用
window.print()
或Ctrl+P打印该票时,即使我的票内容只有一页,也会打印 2 页。当我使用以下 javascript 代码打印页面的特定部分时,不会生成条形码图像。
function print_specific_div_content(){ var content = "<html>"; content += document.getElementById("divToPrint").innerHTML ; content += "</body>"; content += "</html>"; var printWin = window.open('','','left=0,top=0,width=552,height=477,toolbar=0,scrollbars=0,status =0'); printWin.document.write(content); printWin.document.close(); printWin.focus(); printWin.print(); printWin.close(); }
我的要求是:
票应仅打印在单页上。
任何帮助或建议将不胜感激。
谢谢。
编辑 1:
我修改了我的功能如下,但不幸的是它显示新窗口但没有打印对话框。:(
function print_specific_div_content(){
var win = window.open('','','left=0,top=0,width=552,height=477,toolbar=0,scrollbars=0,status =0');
var handler = function() {
win.print();
win.close();
};
if(win.addEventListener)
win.addEventListener('load', handler, false);
else if(win.attachEvent)
win.attachEvent('onload', handler, false);
var content = "<html>";
content += document.getElementById("divToPrint").innerHTML ;
content += "</body>";
content += "</html>";
win.document.write(content);
win.document.close();
}