zoukankan      html  css  js  c++  java
  • JS实现页面打印

    方法多多,自己收集一下

    1、js实现(可实现局部打印)

    Html代码 复制代码 收藏代码
    1. <input id="btnPrint" type="button" value="打印" onclick="javascript:window.print();" />  
    2.   
    3. <input id="btnPrint" type="button" value="打印预览" onclick=preview(1) />  
    4. <style type="text/css" media=print>  
    5. .noprint{display : none }   
    6. </style>  
    7.   
    8.   
    9. <p class="noprint">不需要打印的地方</p>  
    10.   
    11. <script>  
    12. function preview(oper)          
    13. {   
    14. if (oper < 10)   
    15. {   
    16. bdhtml=window.document.body.innerHTML;//获取当前页的html代码   
    17. sprnstr="<!--startprint"+oper+"-->";//设置打印开始区域   
    18. eprnstr="<!--endprint"+oper+"-->";//设置打印结束区域   
    19. prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //从开始代码向后取html   
    20.   
    21. prnhtmlprnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html   
    22. window.document.body.innerHTML=prnhtml;   
    23. window.print();   
    24. window.document.body.innerHTML=bdhtml;   
    25. } else {   
    26. window.print();   
    27. }   
    28. }   
    29. </script>  
    30. <p>XXXXX</p>  
    31. <!--startprint1-->要打印的内容<!--endprint1-->  
    32.   
    33. 再加个打印按纽 onclick=preview(1)   
    <input id="btnPrint" type="button" value="打印" onclick="javascript:window.print();" />
    
    <input id="btnPrint" type="button" value="打印预览" onclick=preview(1) />
    <style type="text/css" media=print>
    .noprint{display : none }
    </style>
    
    
    <p class="noprint">不需要打印的地方</p>
    
    <script>
    function preview(oper)       
    {
    if (oper < 10)
    {
    bdhtml=window.document.body.innerHTML;//获取当前页的html代码
    sprnstr="<!--startprint"+oper+"-->";//设置打印开始区域
    eprnstr="<!--endprint"+oper+"-->";//设置打印结束区域
    prnhtml=bdhtml.substring(bdhtml.indexOf(sprnstr)+18); //从开始代码向后取html
    
    prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));//从结束代码向前取html
    window.document.body.innerHTML=prnhtml;
    window.print();
    window.document.body.innerHTML=bdhtml;
    } else {
    window.print();
    }
    }
    </script>
    <p>XXXXX</p>
    <!--startprint1-->要打印的内容<!--endprint1-->
    
    再加个打印按纽 onclick=preview(1) 
    
    
    

     2、调用windows底层打印,报安全警告,不建议使用(不支持局部打印)

    Html代码 复制代码 收藏代码
    1. <HTML>  
    2. <HEAD>  
    3. <TITLE>javascript打印-打印页面设置-打印预览代码</TITLE>    
    4. <META http-equiv=Content-Type content="text/html; charset=gb2312" />    
    5. <SCRIPT language=javascript>     
    6.   function printsetup(){     
    7.   // 打印页面设置     
    8.   wb.execwb(8,1);     
    9.   }     
    10.   function printpreview(){     
    11.   // 打印页面预览     
    12.          
    13.   wb.execwb(7,1);            
    14.          
    15.   }     
    16.   
    17.   function printit()     
    18.   {     
    19.   if (confirm('确定打印吗?')) {     
    20.   wb.execwb(6,6);    
    21.   }     
    22.   }     
    23.   </SCRIPT>    
    24. </HEAD>    
    25. <BODY>    
    26.   
    27. <DIV align=center>    
    28. <OBJECT id=wb height=0 width=0     
    29. classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 name=wb></OBJECT>    
    30. <INPUT onclick=javascript:printit() type=button value=打印 name=button_print />     
    31. <INPUT onclick=javascript:printsetup(); type=button value=打印页面设置 name=button_setup />     
    32. <INPUT onclick=javascript:printpreview(); type=button value=打印预览 name=button_show />     
    33. 一按开始的减肥了卡时间段   
    34. </DIV>    
    35. </BODY>    
    36. </HTML>   
    <HTML>
    <HEAD>
    <TITLE>javascript打印-打印页面设置-打印预览代码</TITLE> 
    <META http-equiv=Content-Type content="text/html; charset=gb2312" /> 
    <SCRIPT language=javascript>  
      function printsetup(){  
      // 打印页面设置  
      wb.execwb(8,1);  
      }  
      function printpreview(){  
      // 打印页面预览  
          
      wb.execwb(7,1);         
          
      }  
    
      function printit()  
      {  
      if (confirm('确定打印吗?')) {  
      wb.execwb(6,6); 
      }  
      }  
      </SCRIPT> 
    </HEAD> 
    <BODY> 
    
    <DIV align=center> 
    <OBJECT id=wb height=0 width=0  
    classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 name=wb></OBJECT> 
    <INPUT onclick=javascript:printit() type=button value=打印 name=button_print />  
    <INPUT onclick=javascript:printsetup(); type=button value=打印页面设置 name=button_setup />  
    <INPUT onclick=javascript:printpreview(); type=button value=打印预览 name=button_show />  
    一按开始的减肥了卡时间段
    </DIV> 
    </BODY> 
    </HTML> 
    
    

     
    3、jQuery实现(支持局部打印)

    Html代码 复制代码 收藏代码
    1. <script type="text/javascript" src="jquery-1.4.2.min.js"></script>    
    2. <script type="text/javascript" src="jquery.PrintArea.js"></script>    
    3. <script>  
    4. $(document).ready(function(){   
    5.   $("input#biuuu_button").click(function(){   
    6.   
    7.   $("div#myPrintArea").printArea();   
    8.   
    9. });   
    10. });   
    11.     
    12. </script>  
    13.     
    14.   
    15.   
    16.   
    17. <input id="biuuu_button" type="button" value="打印"></input>  
    18.   
    19. <div id="myPrintArea">.....文本打印部分.....</div>   
    <script type="text/javascript" src="jquery-1.4.2.min.js"></script> 
    <script type="text/javascript" src="jquery.PrintArea.js"></script> 
    <script>
    $(document).ready(function(){
      $("input#biuuu_button").click(function(){
    
      $("div#myPrintArea").printArea();
    
    });
    });
     
    </script>
     
    
    
    
    <input id="biuuu_button" type="button" value="打印"></input>
    
    <div id="myPrintArea">.....文本打印部分.....</div> 
  • 相关阅读:
    【BZOJ3998】弦论(后缀自动机)
    【BZOJ4566】找相同字符(后缀自动机)
    AtomicInteger在实际项目中的应用
    ElasticSearchserver操作命令
    照猫画虎学gnuplot之折线图
    HDU 5667 :Sequence
    mycat 连续分片 -&gt; 按日期(天)分片
    DM8168 unrecoverable error: OMX_ErrorBadParameter (0x80001005) [resolved]
    多线程(一):初识多线程
    Vb.net/VB 声明API函数实现父窗口功能
  • 原文地址:https://www.cnblogs.com/rainbowzc/p/3614361.html
Copyright © 2011-2022 走看看