1
<html>
<head>
<script type="text/javascript">
    function printpage()
        {document. getElementById ('print').style.display='none';
        window.print()
    }
</script>
</head>
<body>
  <td align="center">
    <input  name="print" type="submit" id="print" value="PRINT" onclick="printpage()" />
  </td>
</body>
</html>

当我单击时,它将打开一个打印窗口。一旦我关闭打印窗口并再次打开它,然后单击打印,而不重新加载,它将无法工作。

4

3 回答 3

7

document.getElementById('print').style.display='none';从您的printpage()功能中删除。

在上述情况下,该按钮将对另一个单击事件可见,但是当您打印文档时,该按钮将显示在打印的文档上。我对吗?

为了防止打印print按钮,您需要使用css 媒体查询 @media print

在您的外部样式表或HTML 页面<style>标签内的标签中添加以下内容:<head>

 @media print {    
     .noprint { display: none; }
 }​

并添加.noprint

<input  name="print" class="noprint" type="submit" id="print" value="PRINT" onclick="printpage()" />

看演示

它将打印文档而不打印按钮,并且您的按钮也将在第二次单击时可见:-)

编辑:

使用下面给出的 HTML:

<!DOCTYPE html>
<html>
    <head>

      <meta charset=utf-8 />  
      <title>JS Bin</title>  

      <!-- Your Stylesheet (CSS) -->  
      <style type="text/css">
         @media print {    
           .noprint { display: none; }
         }​
      </style>

      <!-- Your Javascript Function -->  
      <script>
          function printpage() {       
              window.print();
          }
      </script>

    </head>
<body>

<!-- Your Body -->
<p>Only This text will print</p>

<!-- Your Button -->
<input class="noprint" type="button" value="PRINT" onclick="printpage()" />

</body>
</html>

见上面的代码在行动

于 2012-07-31T10:59:12.243 回答
1

将 type=submit 更改为 type=button

您在提交时正在卸载页面

并用AK发布的 CSS 隐藏按钮

于 2012-07-31T11:20:44.043 回答
0

只需删除

document.getElementById('print').style.display='none';

从你的printpage()功能。它会正常工作

如果您不想打印页面上的打印按钮,

document.getElementById('print').style.visibility='hidden'
window.print();
document.getElementById('print').style.visibility='visible'
于 2012-07-31T10:53:42.930 回答