`
javawangli
  • 浏览: 221225 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(原创)javascript 实现批量打印《简历》

阅读更多

(原创)javascript 实现批量打印《简历》

 

先来看看效果

1,选中所要打印的简历



 

2,到打印页面



 

3,直接打印



 

4,打印设置,预览



 

 

 

5,打印



 

代码实现

 

1,首先将所有的简历选中放在一个页面中

代码:

 

 //打印简历
		        function daYinResume(){		        	
		        	var v = document.getElementsByName("ids");
					var ids=new Array();;
					var url="<%=contexPath %>resumemgr/resumeView!resumeList.action?ids=";
					var flag = false;
			
					for(var i = 0; i < v.length; i++) {
						if(v[i].checked) {
							ids.push(v[i].value);
							flag = true;
							
						}
					}
					if(flag){						
						
					     var newUrl=url+ids;
					     window.open(newUrl);//跳转打印页面
					     
				      }
					
					
				    
				     
					if(!flag){
						alert("请先选择数据!");
					}
						
		        	
		        }

2,跳转到打印页面

代码:

 

在页面头引进插件

 

            <OBJECT  id=WebBrowser  classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 style="display:none">
 </OBJECT>   引进插件  

 

css 代码

 

<style type="text/css">
			<!--
			
			.PageNext{ page-break-before: auto;  
			      page-break-after: always;}
			
			-->
		</style>



包裹简历div
  <div class="PageNext">简历内容</div>

 

在循环简历时添加此标签 来区分分页

 

 <hr size=1 noshadow color=black  class=NOPRINT >

 

 

 

打印按钮

<div id="dayin">
  	<table align="center" class=NOPRINT>
   <tr>
    <td align="center">
       <BUTTON title=直接打印 onclick=printWithoutAlert()>直接打印</BUTTON>
       <input type=button value="打印设置" onClick="printSetup()" >
       <button onclick ='printPrieview()' title='打印预览...' >打印预览</button></td>
    </tr>
  </table>
 </div>

js方法(该隐藏的隐藏)

 

  
		  function printWithoutAlert() { 	
		    document.getElementById("mainTab").style.display = "none";
                    document.getElementById("xiangqing").style.display="none"
                    document.getElementById("dayin").style.display="none";
		    document.all.WebBrowser.ExecWB(6,6); 
	            document.getElementById("mainTab").style.display = "block";
                    document.getElementById("dayin").style.display="block";
                    document.getElementById("xiangqing").style.display="block";
		     window.close();
		  }  
		  function printSetup() {      
		  document.all.WebBrowser.ExecWB(8,1);    
		  }   
		  function printPrieview() {  
	            document.getElementById("mainTab").style.display = "none";
                    document.getElementById("xiangqing").style.display="none";
                    document.getElementById("dayin").style.display="none";
		    document.all.WebBrowser.ExecWB(7,1); 
	            document.getElementById("mainTab").style.display = "block";
                    document.getElementById("dayin").style.display="block";
                    document.getElementById("xiangqing").style.display="block";
		  }    
		

**注意的地方:

如果提示



 

哪就对IE ActiveX 控件和插件进行设置

ie->设置->Internet选项->安全->自定义级别->


 
都选为启用 即可!

 

  • 大小: 88.5 KB
  • 大小: 129.5 KB
  • 大小: 88.8 KB
  • 大小: 74.9 KB
  • 大小: 74.5 KB
  • 大小: 75.4 KB
  • 大小: 73.1 KB
  • 大小: 119.6 KB
  • 大小: 6.3 KB
1
0
分享到:
评论
3 楼 July01 2017-09-27  

最近了解到一款StratoIO打印控件,
功能如下:1、Html友好的打印方式
2、兼容主流浏览器
3、灵活配置的任务
4、交互式打印支持
5、丰富的管理面板和接口
6、个性化服务
浏览器和系统的兼容性都很好,而且不会崩溃。参考http://webprint.stratoio.com/features
2 楼 liangchengfck1 2016-06-27  
这个只能正对数据量少的批量打印,当你打印10000张数据的时候,页面是加载不了那么多页面的,你的分页打印存在缺陷,应该设置在后台。
1 楼 jyjava 2012-04-16  
你循环执行打印,貌似也能实现批量打印吧,

相关推荐

Global site tag (gtag.js) - Google Analytics