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()" />

デモを見る

ボタンを印刷せずにドキュメントを印刷し、ボタンは2回目のクリックでも表示されます:-)

編集:

以下のように 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 に答える