目前有个管理后台,页面中含有部分指令,需要打印订单信息,想到的是用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();
折腾这个干嘛,上插件啊
jqprint