gpt4 book ai didi

javascript - 如何打印从服务器接收到的 html 页面?

转载 作者:行者123 更新时间:2023-11-30 10:31:14 24 4
gpt4 key购买 nike

我正在尝试打印我在服务器上使用 Node.js 生成的 HTML 页面。我已将页面作为对 AJAX 请求的响应带到客户端,并将其保存在 javascript 变量中。

var resp_json = printRequest.getResponseJson();

现在我正在尝试打印呈现的 HTML 页面(即没有标签)而不是将要发送的 DOM 对象。

我阅读了有关 window.print() 的内容,但它仅在浏览器中打印当前页面。任何人都可以建议我一种方法。

此外,在 Node 生成 HTML 页面是正确的方法,或者应该是任何其他类型的文档。该页面应该在 Node 上动态生成,最终结果应该是打印的文档。提前致谢!!

附言我正在使用闭包库,不要问为什么,这已经为我决定了。

附言我是 javascriptnode.js 的新手,所以不要害怕进行冗长的演讲,我洗耳恭听!!

最佳答案

无弹窗

function printHTMLString(htmlString) {
var originalDocument = document.body.innerHTML;
document.body.innerHTML = htmlString;
window.print();
document.body.innerHTML = originalDocument;
}

带弹窗

var popupWIndow = window.open('','','width=200,height=100');    
popupWIndow.document.write(jsonResponse);
popupWindow.window.print();

如果由于某种原因它不起作用,请在 print() 之前添加以下行

popupWindow.window.location.reload(); 

打印前还需要将json对象转成字符串

JSON.stringify(jsonObject)

但要使所有这些工作正常,浏览器必须能够将其读取为 HTML 页面,以便呈现它。 JSON 对象将不起作用。

关于javascript - 如何打印从服务器接收到的 html 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16871036/

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