$.get("http://example.com/invoice.html", function( data ) {
console.log(data); //work
window.print(data); // doesn't
});
如何正确加载外部html并打印出来?上面的代码不起作用,
它打印网页本身,而不是我想要的外部HTML。
有什么想法吗?
答案 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
。