骨干js动态添加打印区域

时间:2014-07-25 21:07:08

标签: backbone.js backbone-views

我需要使用Print Button打印View模型数据。

目前我有一个div并将视图内容分配给它。这个div已经添加到骨干区域。在我的javascript函数中,我只是将viewmodel内容设置为printdiv,它可以解决任何问题。

但是我为打印添加的内容也会附加在浏览器HTML中,我不想在浏览器中显示。我尝试设置隐藏的隐藏,并向我的printingdiv显示无。但由于内容不可见,打印无法正常工作

CSHTML:

<div id="printdiv"/>

JS:

  Myapp.printdiv.show(viewData.view);
  window.print();

Init.JS

Myapp.addRegions({
printdiv: '#printdiv',
});

请帮我解决此问题

由于

1 个答案:

答案 0 :(得分:0)

处理此类问题的最佳方法是使用特定于打印的样式表。 This article详细解释了如何做到这一点,但简短的版本是您正常定义非打印样式,然后使用如下所示的CSS代码来覆盖特定于打印的样式:

#printdiv {
    display: none
}

@media print {
    #printdiv {
        display: block;
    }
}