【问题标题】:How do I print different page using javascript/jQuery/ajax?如何使用 javascript/jQuery/ajax 打印不同的页面?
【发布时间】:2014-05-17 03:22:06
【问题描述】:

使用以下代码显示打印对话框并成功打印页面,但是单击同一按钮后如何打印不同的页面?不同的页面名称是:letterprint.php

<div class="below_movie_left" id="printableArea">
My printing contents
</div>

<input type="button"  class="submit_button" onclick="printDiv('printableArea')" value="Print" style="float:right;" />

<script>
function printDiv(divName) {
     var printContents = document.getElementById(divName).innerHTML;
     var originalContents = document.body.innerHTML;

     document.body.innerHTML = printContents;

     window.print();

     document.body.innerHTML = originalContents;
}
</script>

这可以通过 javascript/jQuery/Ajax 方法实现吗?怎么样?

【问题讨论】:

标签: javascript jquery ajax


【解决方案1】:

如果您已经有了要打印的页面,则将该页面放入隐藏的 iframe 中并打印 iframe 的内容

<iframe src="letterprint.php" name="frame"></iframe>

<input type="button" onclick="frames['frame'].print()" value="printletter">

【讨论】:

  • 是的,你的想法很棒。
【解决方案2】:

您不能真正打印另一页;浏览器只是不给 Javascript 那种力量。但是,您可以做的是更改用户所在页面的内容。

简而言之,您可以使用 AJAX 或 iframe 访问第二个页面 (letterprint.php),然后将页面上某个元素的内容替换为该页面的内容。如果您不希望它对用户可见,您可以使用目标样式表使新内容仅在打印时可见。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-22
    • 1970-01-01
    • 2018-03-27
    • 1970-01-01
    • 2012-02-08
    • 1970-01-01
    • 2012-03-06
    • 2011-02-14
    相关资源
    最近更新 更多