使用window.print打印外部html

时间:2015-08-14 06:38:55

标签: javascript jquery

$.get("http://example.com/invoice.html", function( data ) {
                console.log(data); //work
                window.print(data); // doesn't
            });

如何正确加载外部html并打印出来?上面的代码不起作用,

它打印网页本身,而不是我想要的外部HTML。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

打印功能不带任何参数,只打印窗口数据。

只要您的数据是html(要正确格式化和查看),您就可以打开一个新窗口,在其中设置数据,关闭它并使用打印功能,因为对象仍然可用,您可以还会在新窗口中链接特定于打印数据的任何CSS

$.get("http://example.com/invoice.html", function( data ) {

       var printWindow = window.open('', '', 'height=400,width=800');
       printWindow.document.write('<html><head><title>DIV Contents</title>');
       printWindow.document.write('</head><body >');
       printWindow.document.write(data);
       printWindow.document.write('</body></html>');
       printWindow.document.close();
       printWindow.print();
});

答案 1 :(得分:0)

window.print()不接受任何参数。

您需要在新窗口中打开已获取的HTML,或者将其加载到模态叠加层中,然后调用window.print