根据单击的元素打印页面的不同部分
Printing different part of page depending on clicked element
我正在寻找一种巧妙的方法来打印页面的一小部分,这取决于用户单击的链接。一个例子:
Item 1 PRINT
Item 2 PRINT
如果我点击项目1旁边的打印,我只想在打印对话框中打开项目1。同样,如果我单击项目旁边的,我只希望项目2打开。
我知道<a href="javascript:window.print()">
,以及如何将一个名为noprint
的类添加到我不想打印的任何元素中,但我想要的是一种聪明、动态的方法,可以根据用户与页面上的哪个元素进行交互来更改它。
有人知道解决这个问题的方法吗?
这是我最喜欢的方法。它在S/O上不起作用,但在这个笔中起作用
function printDiv(id) {
var printContents = document.getElementById(id).innerHTML;
var originalContents = document.body.innerHTML;
document.body.innerHTML = printContents;
window.print();
document.body.innerHTML = originalContents;
}
<div id="first">I'm first</div>
<button onclick="printDiv('first')">Print</button>
<div id="second">I'm second</div>
<button onclick="printDiv('second')">Print</button>
- 在后端创建单独的操作,该操作将在适当的准备打印视图中呈现所需项目(类似于
/print?itemId=123
) - 单击链接,在单独的窗口中打开该视图,然后调用
window.print();
对于小任务来说,这似乎是一项艰巨的任务,但您将从相同项目的独立、灵活的屏幕和打印视图中获得显著的好处。
相关文章:
- 使用javascript将动态表从一个html页面打印到另一个html页
- JavaScript打印功能使日历停止工作
- esri javascript异步打印
- 文本框不是从Javascript/Asp.net中的对话框中打印出来的
- jQuery/JavaScript在线公文包表单-打印样式表
- 如何打印嵌套对象的所有值
- 在终端中运行 JavaScript 时(使用 rhino),如何使用 print() 函数在一行中打印
- 打印预览没有应用程序页眉和页脚的html表格
- 通过单击动态加载的表中同一行的另一个字段来更新一行的字段
- 正在打印图表上的文本
- 同构reactjs-cdn资产
- Rhino打印功能
- renderReact/Rect Router+Node/Express.js的服务器端/同构渲染中未定义renderP
- 在通过child.print()打印之前,我如何等待图像加载到我的新窗口中
- 如何用javascript打印php数组
- Javascript,从静态函数中打印全局对象
- 试图打印/调用/或提醒数组中的对象:Getting Undefined
- 按压“;输入“;将值打印到控制台日志
- 将数组的拼接分配给自身时,Javascript控制台打印不起作用
- 如何在php中创建一个函数,该函数与文本区域一起工作,通过输入类似[color:red]的内容来打印具有等效颜色的文本