我想打印一个动态添加内容的页面。我试着这样做:
$("body").on("click", function() {
function preparePrint() {
var print_window = window.open();
var print_document = $("div.container").clone();
print_document.find('.block').each(replaceWith("X"));
print_window.document.open();
print_window.document.write(print_document.html());
print_window.document.close();
print_window.print();
print_window.close();
}
$("#print").click(function() {
preparePrint();
})
})
每次点击,都会克隆div
类container
的内容。 container
包含一些div
和表。在克隆中,我尝试使用类block
查找元素,并用大写的“X”替换它们。 block
是动态添加到某些td
的类。
然后,我打开一个新窗口并将克隆的html内容放在那里。然后我打印出来。
到目前为止,这么好,但更换不起作用 - 为什么?我还尝试document.write
,html()
和text()
来获取“X”,但没有效果。我总是以白页结束,所以也许克隆也有问题。
答案 0 :(得分:1)
print_document.find('.block').each(function(){ $(this).replaceWith("X") });