打印页面的局部dom
目前有个管理后台,页面中含有部分指令,需要打印订单信息,想到的是用window.print()
,但问题是只需要打印部分
1.方式一:
首先获取页面dom,暂时存放,再获取打印部分的dom,赋值给window.document.body.innerHTML
,等打印完毕,再将存放的dom赋值给window.document.body.innerHTML
,问题是,页面的指令在打印后,失效
var tempHtml = window.document.body.innerHTML;
var prnhtml = $('.dialog_warp .print-body').html();
window.document.body.innerHTML = prnhtml; //把需要打印的指定内容赋给body.innerHTML
window.print(); //调用浏览器的打印功能打印指定区域
window.document.body.innerHTML = tempHtml; //重新给页面内容赋值;
2.方式二:
新创建一个页面,将打印区域的内容赋值给新页面的window.document.body.innerHTML
,待打印完之后,关闭新页面,问题是页面不出现内容,或者打印之后不关闭页面
http://bbs.csdn.net/topics/39...
var p='<html><head><title>订单打印</title></head><body>'+$('.dialog_warp .print-body').html()+'</body></html>';
var w = window.open('about:blank');
w.document.write(p);
w.print();
w.close();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
折腾这个干嘛,上插件啊
jqprint