如何在单独的窗口中打印html表

时间:2013-03-06 03:01:58

标签: javascript html

当我按下按钮时,我想在一个单独的窗口中使用一些PHP数据打印HTML表格。最好的方法是什么?

<table border="1"> 
    <tr>
        <td>MODEL</td>
        <td><?php echo $modelNo ?></td>
        <td>MODEL</td>
        <td><?php echo $modelNo ?></td>
    </tr>
    <tr>
        <td>QTY</td>
        <td><?php echo $box ?></td>
        <td>QTY</td>
        <td><?php echo $box ?></td>  
    </tr>
</table>

4 个答案:

答案 0 :(得分:1)

让按钮打开新窗口,并将其位置设置为打印表格的PHP文件。

这样简单的事情可以起作用:

<a href="show_table.php" target="_blank">Click</a>

(您可以选择将此链接设为看起来像按钮)

答案 1 :(得分:0)

您需要从PHP脚本返回此表,或在某处可用(我假设您已经这样做了)。

这是一个纯粹的html方法:

<a href="tabledata.php" target="_blank">Open Table!</a>

这是一个javascript方法:

<script type="text/javascript">
<!--
function myPopup() {
window.open( "http://path.to.my.page.com/mypage.php" )
}
//-->
</script>
</head>
<body>
<form>
<input type="button" onClick="myPopup()" value="Open table!">
</form>
<p onClick="myPopup()">CLICK ME TOO!</p>

答案 2 :(得分:0)

你也可以在一个隐藏的输入中使用html并使用表单提交到另一个页面并使用$ _POST从那里检索它,就像假设$ table_data是你的html:

<form action="new_window.php">    
<input type="hidden" value="$table_data" name="data">
<input type="submit" value="Open Table"> 
</form>

然后在new_window.php中:

if(isset($_POST['data'])){
echo $_POST['data'];
}

答案 3 :(得分:0)

您还可以通过创建新窗口并在窗口中编写内容来在javascript中创建整个解决方案。

在这里看到在新窗口中写入的基本方法: http://www.w3schools.com/jsref/met_win_open.aspPrint the contents of a DIV

您必须在表中添加id属性

然后玩DOM功能,例如: https://developer.mozilla.org/en-US/docs/DOM/document.getElementByIdhttps://developer.mozilla.org/en/docs/DOM/element.innerHTML

您必须将表格包装成html。这种方法的主要优点是可以在以后的任何表上调用它,而无需添加一行php。