我正在尝试使用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)它就可以了。
可能是什么问题?
提前感谢您的任何帮助
答案 0 :(得分:1)
您需要在要写入打印文档的HTML中包含<table>
标记。调用.html()
只会让你在表格标签中找到。
或者,您可以将表格包装在另一个元素(<div>
或其他内容)中,然后:
var content_vlue = $('#rounded').parent().html();