登录  /   注册
  • 首页

  • PHP培训

  • 视频教程

    视频课程 直播课程 精品课
  • 学习路径

    入门教程 独孤九贱 玉女心经 天龙八部 趣味闯关
  • 资源下载

    源码市场 工具下载 在线工具 手册下载 电子课件 js特效 网站源码 网站素材 类库下载
  • 技术文章

    前端开发 后端开发 数据库 php框架 每日编程
  • 社区

    问答 博客 文章 专题
  • 微信公众号

    扫码关注官方订阅号

  • 编程词典 APP下载 源码市场
首页 > web前端 > js教程 > 正文

js实现打印超市小票功能代码详解

小云云
发布: 2018-01-15 17:13:37
原创
11827人浏览过

本文主要介绍了activex控件的使用-js实现打印超市小票功能代码详解,具有一定参考价值,需要的朋友可以了解下,希望能帮助到大家。

·应客户的需求= = ,要在网页端实现打印小票的功能

·先来一张打印出的小票效果图(合计明显不对,因为有修改订单功能,请各位忽略)

用什么方法实现呢:

我想应该是有三种吧

1.用第三方的浏览器控件(这个好似比较方便,我的老师也是这样建议我)向大家推荐一个 Lodop打印控件

2.用CSS写好模板,然后直接用页面打印的方法(应该是这样吧)

以上两种还没有尝试,这两天陆续尝试)

3.用微软自己的ActiveX控件(ActiveX控件可以实现调用本地的文件等操作(之前试过调用cmd,实现shutdown -s -t,在网页控制电脑的定时关机))

当然这种方法的缺点也很明显:限操作系统-因为是微软的东西只能Windows下,限浏览器-因为ActiveX也只能在IE浏览器下。所以局限性比较大

实现过程:

1.编辑『word小票模板』,要用到word中『书签』这个工具(通过『书签』的定位,js就可以操作word在『书签』指定的位置进行 修改、写入内容)

2.在js对word模板进行 打开、赋值、打印操作

一、编辑『word小票模板』

    1.以word2007为例,首先排好大致的样式

二、js

直接上源代码吧:


<input type="button" value="toPrinter " onclick="viewToWord();" />
登录后复制


- Hide code
function viewToWord() {
    //当前时间
    var Time;
    var today = new Date();
    Time = today.toLocaleString();
    
    try { 
      // 创建ActiveXObject对象 
      wdapp = new ActiveXObject("Word.Application"); 
    } 
    catch (e) { 
      console.log("无法调用Office对象,!", e) 
      wdapp = null; 
      return; 
    }
    wdapp.Documents.Open("f:\\PrinterTemplate1.doc"); //打开本地(客户端)word模板
    wddoc = wdapp.ActiveDocument; 
    wddoc.Bookmarks("OrderNum").Range.Text = "201509080959" + "\n";
    wddoc.Bookmarks("OrderName").Range.Text = "郑斌" + "\n"; 
    wddoc.Bookmarks("OrderAddress").Range.Text = "www.cnblogs.com/zhengbin" + "\n";
    wddoc.Bookmarks("OrderPhoneNum").Range.Text = "QQ:1746788394" + "\n";
    wddoc.Bookmarks("OrderDaocanTime").Range.Text = "10:00-11:00" + "\n";
    wddoc.Bookmarks("OrderTime").Range.Text = "09-08 10:15";
    //添加表格
    var myTable = wddoc.Tables.Add (wddoc.Bookmarks("OrderCart").Range,3,3);//(赋值区域,行数,列数)
    //隐藏边框
    var table=wdapp.ActiveDocument.Tables(1);
    table.Borders(-1).LineStyle=0;
    table.Borders(-2).LineStyle=0;
    table.Borders(-3).LineStyle=0;
    table.Borders(-4).LineStyle=0;
    table.Borders(-5).LineStyle=0;
    table.Borders(-6).LineStyle=0;
    for(i=1;i<=3;i++){//行
      //第一列
      with (myTable.Cell(i,1).Range){
        font.Size = 8;//调整字体大小
        InsertAfter("博客园"+i);//插入的内容
      }
      //第二列
      with(myTable.Cell(i,2).Range){
        font.Size = 8;
        InsertAfter(i);
        ParagraphFormat.Alignment=1;//表格内容对齐:0-左对齐 1-居中 2-右对齐
      }
      //第三列
      with(myTable.Cell(i,3).Range){
        font.Size = 8;
        InsertAfter("无价");
        ParagraphFormat.Alignment=2;
      }
    }
    wddoc.saveAs("f:\\PrinterTemp_cnblogs.doc"); //保存临时文件word
    wddoc.Bookmarks("TotalPrice").Range.Text = "无价" + "\n";
    wddoc.Bookmarks("Time").Range.Text = Time; 
    //wdapp.ActiveDocument.ActiveWindow.View.Type = 1;
    wdapp.visible = false; //word模板是否可见 
    wdapp.Application.Printout(); //调用自动打印功能 
    wdapp.quit();
    wdapp = null; 
  }
登录后复制

最后:

注意:

首先要调整好IE浏览器的 Internet选项-自定义级别(右边『ActiveX控件和插件』下,能启用的都启用)

『打印机脱机工作』一般是usb没有插好,换插口,重启打印机即可

有关ActiveX控件,简单介绍下:ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。在有目录和其它支持的网络中,COM变成了分布式COM(DCOM)。ActiveX 控件是用于互联网的很小的程序,有时称为插件程序。它们会允许播放动画,或帮助执行任务,如在 Microsoft Update 安装安全更新,因此可以增强您的浏览体验。下面附本站免费下载地址:

OCX控件 [activex控件] 中文版

js之ActiveX控件使用说明 new ActiveXObject()

相关推荐:

PHP实现顺时针打印矩阵(螺旋矩阵)的方法示例

js 客户端打印html 如何去掉页眉、页脚

javaScript 连接打印机,打印小票实例分享

以上就是js实现打印超市小票功能代码详解的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
我要提问
来源:php中文网
收藏 点赞
上一篇:在vue中添加Echarts图表使用详解 下一篇:纯原生JS的瀑布流插件Macy.js使用详解
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
  • 在PHP培训机构学完好就业吗?
    2023-05-18 06:21:01
  • 哪家PHP培训机构最好?
    2023-05-18 06:18:02
  • js求随机数的方法详解
    2023-03-22 22:18:02
  • js中的exports详解
    2023-03-22 22:16:02
  • PHP股票接口如何获取行情
    2023-03-22 22:14:01
  • PHP实现在线投稿审稿系统的方法
    2023-03-22 22:12:02
  • php中pear的基本使用方法分享
    2023-03-22 22:10:02
  • php系统总结分享
    2023-03-22 22:08:01
  • js传递参数给php乱码如何解决
    2023-03-22 22:06:01
  • php获取文件大小详解
    2023-03-22 22:04:01
最新问题
google 浏览器 手机版显示的怎么实现 老师您好,google 浏览器怎么变成手机版样式的?
艾尼宛尔.亚森来自于2024-04-23 00:22:19
0 0 48
子窗口操作父窗口,输出没反应 前两句可执行,最后一句没法应
P粉722478067来自于2024-04-19 15:37:47
0 0 164
父窗口没有输出 document.onclick = function(){ window.opener.document.write('我是子窗口的输出');  &nb...
P粉722478067来自于2024-04-18 23:52:34
0 0 105
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
0 0 203
PX自动转换为REM错误  <style>html {   font-size: calc(100vw / 3.75);      }...
凡人来自于2024-04-16 09:34:16
0 0 1601
PHP数组从URL参数中获取的行为不如预期 我有一个包含类别ID的URL参数,我想将其视为一个数组,如下所示:http://example.com?cat[]=3,9,13在PHP中,我使用它从URL参数获取数组:$catI...
P粉785905797来自于2024-04-06 22:09:02
0 1 525
通过添加 Width 属性将内容向左移动 我已经为主体提供了边距。主要{左边缘:200px;右边距:200px;文本对齐:居中}由于我想以两行而不是一行显示文本,因此我在样式中添加了width属性。.p{字体大小:12px...
P粉738046172来自于2024-04-06 22:01:35
0 2 364
我应该在 apache 中哪里放置 CustomLog 指令 我正在使用php:7.2-apachedocker。我需要禁用运行状况检查url登录访问日志。基于此链接,他们提到了有关修改Customlog指令的信息。我不是关于需要更改Cust...
P粉573809727来自于2024-04-06 22:03:59
0 1 481
返回值中变量的格式是什么? 我是php的新学习者。我发现有一段代码:if($x<time()){return[false,'error'];}逻辑或变量并不重要,但我不明白[false,'error']...
P粉757556355来自于2024-04-06 21:55:20
0 1 287
页面突然无法拉动 css 或 bootstrap 所以我正在开发一个页面,我昨天做了一部分,效果很好,今天我继续做剩下的部分,一切都很好。当我尝试将其作为普通html页面打开时,CSS或BOOTSTRAP不起作用,仅显示页面文本,...
P粉771233336来自于2024-04-06 21:58:04
0 1 379
相关专题
更多>
  • 笔记本电脑的功率
  • python环境变量配置
  • 怎么查看Tomcat源代码
  • 缺陷管理工具
  • 以太坊会涨到多少
  • window.setinterval
  • 移动硬盘分区软件
  • erp免费软件
热门推荐
  • tomcat部署没有工作部署怎么办
  • tomcat的项目要放在哪个目录下
  • tomcat项目部署步骤怎么写
  • tomcat项目部署期间出错怎么处理
  • tomcat启动后如何访问页面
  • tomcat发布的项目在哪
  • tomcat怎么部署war包
  • tomcat出现乱码的原因
  • tomcat出现乱码怎么处理
  • tomcat启动报错日志在哪
热门教程
更多>
相关推荐
热门推荐
最新课程
  • phpStudy极速入门视频教程
    phpStudy极速入门视频教程
    513617次学习
    收藏
  • 独孤九贱(1)_HTML5视频教程
    独孤九贱(1)_HTML5视频教程
    595444次学习
    收藏
  • 独孤九贱(5)_ThinkPHP5视频教程
    独孤九贱(5)_ThinkPHP5视频教程
    1189339次学习
    收藏
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
  • [表单按钮] jQuery企业留言表单联系代码
  • [播放器特效] HTML5 MP3音乐盒播放特效
  • [菜单导航] HTML5炫酷粒子动画导航菜单特效
  • [表单按钮] jQuery可视化表单拖拽编辑代码
  • [播放器特效] VUE.JS仿酷狗音乐播放器代码
  • [html5特效] 经典html5推箱子小游戏
  • [图片特效] jQuery滚动添加或减少图片特效
  • [相册特效] CSS3个人相册封面悬停放大特效
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
app下载
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 精品班

  • 技术支持

  • 技术咨询

  • 学习群

  • 会员优惠

  • 返回顶部

  • 代办银行转账凭条成都手机银行电子回单代做海口打印汇款凭证遵义银行转账回执单作用开封转账回执单查询盐城订制回执单九江做定期存单湛江转账小票代办威海银行柜台转账凭证用途遵义订做手机银行电子回单海口订制ATM转账凭条新乡ATM汇款转账小票模板遵义代开跨行转账凭条岳阳银行回执单开具荆州办理转账回执单三亚转账小票代开开封定期存单用途西安定期存单多少钱漳州定做定期存单襄阳定制转账小票绵阳转账凭条用途台州开具银行回执单郑州银行转账凭条用途海口办汇款凭证泰州开银行转账回执单盐城转账凭条图片石家庄汇款回执单制作盐城银行转账小票作用宜春开回执单威海汇款凭证定做桂林手机银行电子回单哪家好香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

    代办银行转账凭条 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化