我正在尝试使用 javascript 打印表格
表格html是这样的:
<table id="rounded" runat=server summary="2007 Major IT Companies' Profit" style="position:relative;left:-45px;" >
<tr>
<th scope="col" class="rounded-company">header1</th>
<th scope="col" class="rounded-q1">header2</th>
<th scope="col" class="rounded-q1">header3</th>
<th scope="col" class="rounded-q1">header4</th>
<th scope="col" class="rounded-q1">header5</th>
<th scope="col" class="rounded-q1">header6</th>
<th scope="col" class="rounded-q1">header7</th>
<th scope="col" class="rounded-q1">header8</th>
<th scope="col" class="rounded-q1">header9</th>
<th scope="col" class="rounded-q4"> header10</th>
</tr>
</table>
我将表的数据抛出 ajax,所以最终表看起来像这样:
<table id="rounded" runat=server summary="2007 Major IT Companies' Profit" style="position:relative;left:-45px;" >
<tr>
<th scope="col" class="rounded-company">header1</th>
<th scope="col" class="rounded-q1">header2</th>
<th scope="col" class="rounded-q1">header3</th>
<th scope="col" class="rounded-q1">header4</th>
<th scope="col" class="rounded-q1">header5</th>
<th scope="col" class="rounded-q1">header6</th>
<th scope="col" class="rounded-q1">header7</th>
<th scope="col" class="rounded-q1">header8</th>
<th scope="col" class="rounded-q1">header9</th>
<th scope="col" class="rounded-q4"> header10</th>
</tr>
<tr>
<td>value1</td>
<td>value2</td>
<td>value3</td>
<td>value4</td>
<td></td>
<td>value6</td>
<td>value7</td>
<td>value8</td>
<td>value9</td>
<td>value10</td>
</tr>
<tr>
<td>value1</td>
<td>value2</td>
<td>value3</td>
<td>value4</td>
<td></td>
<td>value6</td>
<td>value7</td>
<td>value8</td>
<td>value9</td>
<td>value10</td>
</tr>
</table>
我正在使用 javascript 像这样打印表格:
<script type="text/javascript">
function printTable()
{
var disp_setting = "toolbar=yes,location=no,directories=yes,menubar=yes,";
disp_setting += "scrollbars=yes,width=1350, height=800";
var content_vlue = $("#rounded").html();
var docprint = window.open("", "", disp_setting);
docprint.document.open();
docprint.document.write('<link href="css/table2.css" type="text/css" rel="stylesheet" />');
docprint.document.write('<html><head><title>Inel Power System</title>');
docprint.document.write('</head><body onLoad="self.print()"><center>');
docprint.document.write(content_vlue);
docprint.document.write('</center></body></html>');
docprint.document.close();
docprint.focus();
}
</script>
问题是表格打印为 innertext 而不是 innerhtml(没有行没有列没有标题)
如果我获取此表(来自页面源)并尝试打印它(不使用 ajax),它工作得很好。
可能是什么问题?
提前感谢您的帮助
最佳答案
您需要包含 <table>
您正在写入打印文档的 HTML 中的标记。打电话.html()
只是让您了解表格标签内的内容。
或者,您可以将表格包裹在另一个元素(<div>
或其他元素)中,然后:
var content_vlue = $('#rounded').parent().html();
关于javascript - 打印表 javascript 显示为纯文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9657089/