【问题标题】:How can I insert a Print button that prints a form in a webpage如何插入在网页中打印表单的打印按钮
【发布时间】:2013-12-04 18:26:34
【问题描述】:

所以,假设我在这样的页面中有一个简单的表单:

<form style="text-align:center;">
    <p> STUFF </p>
</form>

我想添加一个按钮,这样当用户点击它时,浏览器的打印对话框就会出现,我该怎么做?

编辑:我想打印表单,而不是页面。

【问题讨论】:

  • 您要打印表单还是整页?
  • 对不起,我忘了说,我想打印表格。
  • 这与asp.net mvc无关。

标签: javascript html forms printing


【解决方案1】:

打印整页

尝试添加一个调用window.print()的按钮

<input type="button" value="Print this page" onClick="window.print()">

打印页面中的特定部分/容器

<div id="print-content">
 <form>

  <input type="button" onclick="printDiv('print-content')" value="print a div!"/>
</form>
</div>

然后在 HTML 文件中,添加这个脚本代码

<script type="text/javascript">
    function printDiv(divName) {
        var printContents = document.getElementById(divName).innerHTML;
        w=window.open();
        w.document.write(printContents);
        w.print();
        w.close();
    }
</script>

参考Print <div id="printarea"></div> only?

【讨论】:

  • 我应该把函数放在哪里?
  • 谢谢,但是当我点击按钮时它什么也没做,知道吗?
  • 谢谢它在上次更新之前工作,还有几个问题,我可以隐藏页眉和页脚(页码和日期)吗?并且文本 align 保持对左侧的更改,有什么想法吗?
  • 在 DOM 中找到它并使用它们的 id 隐藏。喜欢document.getElementById('footer).style.display=none 然后调用 print
  • 好吧,我不能这样做,但无论如何谢谢,至少它的打印
【解决方案2】:

你需要的是window.print():

<form style="text-align:center;">

  <p> STUFF </p>

  <a href="#" id="lnkPrint">Print</a>
</form>

Javascript:

$( document ).ready(function() {
    $('#lnkPrint').click(function()
     {
         window.print();
     });
});

【讨论】:

  • 我创建了一个 javascript 并放置了代码并添加了 但是当我点击它时没有任何反应
  • 这是使用 jQuery。你有 jQuery 吗?
  • 我整理了一个 jsFiddle 来展示它的工作原理。注意它是如何包含 jQuery 1.8.3 的:jsfiddle.net/LP8VJ
  • 不,对不起,我很新,我该怎么做?
【解决方案3】:

要使用提交按钮进行打印,请将其添加到您的峰会脚本中:

&lt;input type="button" value="Print this page" onClick="window.print()"&gt;

请记住,这只会触发客户端可用的任何浏览器实现的print 功能。

【讨论】:

  • 请查看此URL 以提升您的优质内容
  • TS 想要打印表格。不是页面。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-07-04
  • 2012-07-22
  • 2023-03-26
  • 2014-12-18
  • 1970-01-01
  • 1970-01-01
  • 2015-04-03
相关资源
最近更新 更多