gpt4 book ai didi

Javascript:Window.print() 之后的空 html div 内容

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:51:26 27 4
gpt4 key购买 nike

单击按钮时,我使用 javascript 的 window.print() 打印 print_div 内容,

但因为一些安全问题,我想避免多次打印(如使用Cntrl + P)选项,所以我想清除print_div内容,用户不能重新一次又一次地打印。

这里是粗略的代码,

document.getElementById("print_div").innerHTML = //Some contents to be printed on paper.
window.print()
document.getElementById("print_div").innerHTML = '' // Clearing old contents to avoid mis-use

但是这段代码根本不起作用,它在像 chrome 一样创建打印预览之前清除 print_div 内容。(我猜,异步工作)

谁能告诉我,哪里做错了?

注意:我正在使用 Chrome:22.0.1229.92 m 来测试我的代码,我只想使用 chrome。

最佳答案

这是因为打印窗口没有加载。

var showPrintWindow = function (context) {
var printWindow = window.open('', '');
var doc = printWindow.document;
doc.write("<html><head>");
doc.write("<link href='/css/printReport.css' rel='stylesheet' type='text/css' media='print' />");
doc.write("</head><body>");
doc.write(context);
doc.write("</body></html>");
doc.close();

function show() {
if (doc.readyState === "complete") {
printWindow.focus();
printWindow.print();
printWindow.close();
} else {
setTimeout(show, 100);
}
};
show();
};

关于Javascript:Window.print() 之后的空 html div 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12813793/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com