1

我有网格和打印图标..如果我单击打印图标,我应该打印网格。但是打印输出中没有显示网格线。

我应该怎么办?

这是我的代码

<div style="float: right" id="hide_div"><a href="javascript:void(0)" onclick="printPage('pnlMainHeader','div_print');"><img src="<?=$this->baseUrl('/images/icons/small/print.png')?>" title="Print" alt="Print" /></a></div>
<div class="clear10"></div>
<div class="pnlMainHeader" id="pnlMainHeader" style="display: none; ">
    //some xyz code
</div>
<div class="clear10"></div>
<div id="div_print">
    //grid code
    <?=$this->TemplateRoles?>
</div>

和.js文件中的onclick printPage代码

function printPage(printpage1, printpage2)
{   
var hideDiv = document.getElementById('hide_div')
hideDiv.style.display = 'none';

var headstr = "<html><head><title></title></head><body>";
var footstr = "</body>";
var newstr1 = document.getElementById(printpage1).innerHTML;
var newstr2 = document.getElementById(printpage2).innerHTML;    
var oldstr = document.body.innerHTML;
document.body.innerHTML = headstr+newstr1+newstr2+footstr;
window.print();
document.body.innerHTML = oldstr;
location.reload();
return false;
}

请帮我..

4

1 回答 1

0

如果您要在标题中添加另一个 css 文件以强制打印边框怎么办?像这样的东西...

<link rel="stylesheet" type="text/css" href="print.css" media="print" />

然后在文件中,您可以使用该类或选择器,如下所示:

.gridClass /*(or "td" or whatever it is called)*/ { border:1px solid #000;}

print.css 中命名的任何内容都只会在打印时出现,因为您指定了媒体。我希望这会有所帮助。

于 2012-08-29T23:46:01.443 回答