js 打印小票

jcp打印插件

由于公司项目需要,需要写个打印小票的功能,在网上找啊找啊,确定了4Fang,调试成功之后,传上测试环境,天啦噜的,测试环境的打印功能竟然不行,在本地行,在测试或者正式上就不行,这是什么大头鬼,多方求证,4Fang打印需要获取一个授权码才能在服务器上部署,官网上说可以免费获取,那就获取呗,我按照官网上的步骤一步一步,还是没获到那个码。你可以试试,我是尽力了~~~
一番折腾之后选择了jcp打印插件。附上该插件链接
http://printfree.jatools.com/doc/
当然免费的终究是免费的,不如它的收费功能强大。打印什么的没有问题的。

function appentPrint(num){
							for(var i=1;i<=num;i++){
												var pageContent = '';    
												pageContent += '<div id="page'+i+'"'+'class="printDiv">';
											//   '<p>3213123</p>';
												pageContent  += '<div class="printDiv_div1">';
												pageContent  += 	'<p class="printDiv_p1">时间:<span class="time">12321</span>  <span style="float: right;">客服:0531-55822193</span></p>';
												pageContent  += 	'<div class="printDiv_div2">';
															pageContent  += 	'<p class="printDiv_p2 pd5_lft0"> <span  class="inlb printDiv_span1">&nbsp;&nbsp;收货:<span class="print_div_address">xxxx加</span> </span> </p>';
															pageContent  += 	'<p class=" pd5_lft0">&nbsp;&nbsp;<span class="inlb print_div_proName">物件名称</span>&nbsp;&nbsp;&nbsp;编号:<span class="print_list_num"></span></p>';
															pageContent  += 	'<p class=" pd5_lft0">&nbsp;&nbsp;<span class="inlb ">下单数量:<span class="placeOrder">2312</span><span class="unite">斤</span></p>';
															pageContent  += 	'<p class=" pd5_lft0 printDiv_p3">&nbsp;&nbsp;<span class="inlb ">实称:<span class="print_div_realWeight" class="fontWeigh"></span><span class="unite">斤</span></p>';
												pageContent  += 	'</div>';
												pageContent  += '</div>';
												pageContent += '</div>';            
												// var apDiv = '<div id="page'+i+'"'+'class="printDiv">'+TempHtml+'</div>'
											$("#printDivTemp").append(pageContent)
							}
						}
						//打印事件 按照原单打印
						$(".print_realWeight").click(function(){
								var myDoc = {
													documents : document, // 打印页面(div)们在本文档中
													settings:{},
													copyrights : '杰创软件拥有版权  www.jatools.com' // 版权声明必须
								};
								myDoc.settings.marginLeft = 2;
								myDoc.settings.marginRight = 1;
								myDoc.settings.marginTop = 1;
								myDoc.settings.marginBottom = 5;
								var jcp = getJCP();
								var print_inputNum = $("#print_inputNum").val();
								    $("#page").siblings().remove();
									var printDivTempHTML = $("#printDivTemp").html()
									if(parseInt(print_inputNum)){//执行打印
										var num = parseInt(print_inputNum);
										appentPrint(num)
									  var orderNum = (placeOrder/print_inputNum*10000/10000).toFixed(2);
									  var realNum = Number(print_div_realWeight/print_inputNum*10000/10000).toFixed(2);
										/*页面设置*/
										$(".time").each(function(){
											$(this).text(date)
										})
										$(".print_list_num").each(function(){
											$(this).text(print_list_num)
										})
										$(".print_div_address").each(function(){
											$(this).text(print_div_address)
										})
										$(".print_div_proName").each(function(){
											$(this).text(print_div_proName)
										})
										$(".placeOrder").each(function(){
											$(this).text(orderNum)
										})
										$(".print_div_realWeight").each(function(){
											$(this).text(realNum)
										})
							            /*页面设置*/
										// jcp.printPreview(myDoc, false);
							            jcp.print(myDoc, false);
										//关闭打印弹窗
										$(".dayin_alert").hide()
										$(".alert_div_weight").hide()
								}else{
									layer.msg('先选择打印数量',{time:2000})
								}
						})

代码很好理解,看一下该插件文档 即可,我只有一点要说明,他是按照 page1,page2,page3进行预分页的,如果多个地方需要打印,就需要先把之前打印的html清空。
它打印的插件可很容易只要把jcpfree.js引入到项目中,它自己就会判断和提示用户下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值