gpt4 book ai didi

javascript - 打印 individually using javascript 的每个循环

转载 作者:行者123 更新时间:2023-12-02 18:56:36 24 4
gpt4 key购买 nike

目前我正在使用以下代码打印带有打印图标的整个页面:

<a href="javascript:window.print()">
<img src="images/printIcon.gif" alt="Print the Records" width="40" height="40" border="0" />
</a>

我正在读取 JSP 中的对象列表并使用 <c:foreach> 显示对象详细信息。我想在每个对象的详细信息旁边显示一个打印图标,并在单击它时仅打印(到外部打印机)单个对象的详细信息。整个页面位于单个 div 中。

我不确定这是否可以做到。我可以使用某种 ID 来控制每个循环吗?

编辑:

示例:

  <c:forEach var="case" items="${distributions}">
<table>
<tr>
Print case details
</tr>
</table>
</c:foreach>

如果我有 10 个发行版,我会得到 10 个表格,因此希望每个表格旁边有一个打印图标,单击它时,仅打印该单个表格。

最佳答案

我还没有执行以下操作,但理论上它应该有效:

1) 定义打印样式表,其中:

body.detail-print .detail-item{display:none}
body.detail-print .detail-item.current{display:block}

2) 定义一个事件监听器,例如使用 jQuery

$(".detail-item .print").click(function(e) {
$("body").addClass("detail-print");
$(this).closest(".detail-print").addClass("current");
window.print();
});

这应该只打印打印样式表中可见的内容。

我在这里看到的唯一问题:如果有人想随后打印整个页面,浏览器将只打印最后选定的项目。您可以使用 setTimeout 来重置类。我现在没有更好的想法......

关于javascript - 打印 <c :foreach> individually using javascript 的每个循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15282676/

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