<div class="panel-body">
<div class="row show-grid">
<div class="col-xs-6" >{if $orderInfo.mark}{$orderInfo.mark}{else}暂无备注信息{/if}</div>
<button type="button" class="layui-btn layui-btn-lg" onclick="handleDY()">打印 </button>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="tableId">123123qawsdasd</div>

<script>

// ====页面动态加载C-Lodop云打印必须的文件CLodopfuncs.js====
var head =
document.head ||
document.getElementsByTagName("head")[0] ||
document.documentElement;
var oscript = document.createElement("script");
// 让本机的浏览器打印(更优先一点):
oscript = document.createElement("script");
oscript.src = "http://localhost:8000/CLodopfuncs.js?priority=2";
head.insertBefore(oscript, head.firstChild);
// 加载双端口(8000和18000)避免其中某个端口被占用:
oscript = document.createElement("script");
oscript.src = "http://localhost:18000/CLodopfuncs.js?priority=1";
head.insertBefore(oscript, head.firstChild);

// 下载loadLodop
function loadLodop() {
// window.open("../assets/lodop/CLodop_Setup_for_Win32NT.exe");
let link = document.createElement("a");
link.style.display = "none";
link.href = "./static/lodop/CLodop_Setup_for_Win32NT.exe";
// link.href =
// "http://www.shengxian.dieoutbug.com/file/CLodop_Setup_for_Win32NT.exe";

//设置<a>标签的下载动作和文件名,并将标签加入body中
link.setAttribute("download", "CLodop_Setup_for_Win32NT.exe");
document.body.appendChild(link);
//模拟点击
link.click();
}

// ====获取LODOP对象的主过程:====
function getLodop() {
var LODOP;
try {
LODOP = getCLodop();
if (!LODOP && document.readyState !== "complete") {
// Message.info();
layList.msg("C-Lodop打印控件还没准备好,请稍后再试!");
return;
}

return LODOP;

} catch (err) {

console.log(111);
layer.confirm('您还未安装打印控件,点击确定下载打印控件,安装成功后刷新页面即可进行打印?', {
btn: ['确认', '取消'] //可以无限个按钮
,
}, function(index, layero){
//按钮【按钮一】的回调
loadLodop();
}, function(index){
//按钮【按钮二】的回调
});

/*
Modal.confirm({
title: "温馨提示",
content:
"您还未安装打印控件,点击确定下载打印控件,安装成功后刷新页面即可进行打印",
onOk: res => {
loadLodop();
},
onCancel: res => {}
});*/

}
}

function handleDY() {
const LODOP = getLodop()
if (LODOP) {
var strBodyStyle = '<style>'
strBodyStyle += 'table { border-top: 1 solid #000000; border-left: 1 solid #000000; border-collapse:collapse; border-spacing:0;}'
strBodyStyle += 'caption { line-height:2em; }'
strBodyStyle += 'td { border-right: 1 solid #000000; border-bottom: 1 solid #000000; text-align:left; padding:2px 3px; font-size:11px; padding-left:10px}'
strBodyStyle += '</style>' //设置打印样式
var strFormHtml = strBodyStyle + '<body>' + document.getElementById('tableId').innerHTML + '</body>' //获取打印内容
LODOP.PRINT_INIT('') //初始化
LODOP.SET_PRINT_PAGESIZE(1, 0, 0, 'A4') //设置纸张大小,纸张打印方向
LODOP.ADD_PRINT_HTM('2%', '2%', '96%', '94%', strFormHtml) //设置打印内容
LODOP.SET_PREVIEW_WINDOW(0, 2, 0, 1400, 900, '') //设置预览窗口模式和大小
LODOP.PREVIEW()
}
}
</script>

连接打印机Lodop的更多相关文章

  1. PHP连接打印机

    <?php header("Content-type: text/html; charset=utf-8"); class Netprint{ public $host = ...

  2. PHP控制连接打印机

    一.需求 使用PHP控制连接打印机 现场实时连续打印动态数据 二.配置 php运行环境正确安装(Apache|Nginx + PHP) 下载与php版本对应的php_printer.dll扩展 扩展文 ...

  3. 打印机驱动冲突和端口异常:win10更新部分补丁后,打印机本地连接(连接打印机的主机)可以打印,其他共享网络中的电脑可以连接到打印机,但不能打印——解决方案

    一.问题描述: 1.A(WIN10系统)表示连接打印机的电脑,P表示打印机(型号:惠普127M),B(WIN7系统)表示局域网中的电脑 2.A升级后部分补丁后,A可以使用打印机P打印文件,B显示可以连 ...

  4. 计算机windows7连接打印机

    计算机连接打印机 (1)查看打印机的名字. 示例,打印机名为 HP LaserJet M1522 .... (2)打开windows开始菜单,点击[设备和打印机],然后查看打印机和传真那个区域是否有打 ...

  5. centos7 连接打印机

    centos7 连接打印机 2017-08-07 15:05:33 五岳寻仙客 阅读数 2531更多 分类专栏: Liunx的日常使用   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版 ...

  6. 基于 Koa平台Node.js开发的KoaHub.js连接打印机的代码

    最近好多小伙伴都在做微信商城的项目,那就给大家分享一个基于 Koa.js 平台的 Node.js web 开发的框架连接微信易联云打印机接口的代码,供大家学习.koahub-yilianyun 微信易 ...

  7. 局域网连接打印机(Win10)

    局域网支持交换机和WIFI环境下进行连接(要求连上打印机的电脑已开启) 1.首先打开控制面板 2.硬件和声音 3.高级打印机设置 4.找到要连接的打印机,通过浏览(R) 添加局域网某台机器上的打印机, ...

  8. android连接打印机

    android连接  网络打印,主要使用socket连接设备,发送指令给设备. 首先要有设备的IP,端口号一般默认的是9100 //打印设备网络IP etIp.setText("192.16 ...

  9. mac os 10.12 Sierra 连接 惠普 M1136 MFP 打印机,通过 samba 协议,安装驱动,连接打印机

    参考链接: https://support.hp.com/hk-zh/product/hp-zbook-17-g3-mobile-workstation/8693765/document/c04530 ...

  10. win7系统 连接打印机 提示 “正在检查 windows update 需要一段时间”

    现象:  在客户端 添加 打印机时,出现  “网络安装打印机 一直在检查 windows update”  提示 处理:等待上述提示结束后,会出现手动添加 提示窗口,在框内选择打印机驱动 .

随机推荐

  1. linux下influx客户端使用

    influxdb-client 通过 sudo apt-cache search influx 找到了一个客户端工具 influxdb-client - command line interface ...

  2. 事务与spring事务

    事务 事务的特性(ACID) 原子性(Atomicity): 标识将事务中所有的操作进行捆绑层一个不可分割的单元格,计对事务所有进行的数据库修改等操作,要么全部执行,要么就是全部失败隔离性(Isola ...

  3. restful的10个规范、序列化和反序列化的名词解释

    # 概念 REST全称是Representational State Transfer,中文意思是表述:表征性状态转移. RESTful是一种定义Web API接口的设计风格,尤其适用于前后端分离的应 ...

  4. ELKF搭建

    logstash cat /etc/logstash/logstash.yml |grep -v '#'path.data: /data/logstash/datapipeline.ordered: ...

  5. webrtc windows编译记录

    //cmd set path=D:\zzh\depot_tools;%path% set DEPOT_TOOLS_WIN_TOOLCHAIN 0 set vs2022_install=C:\Progr ...

  6. jabc连接数据库

    Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法.JD ...

  7. CF1548B Integers Have Friends

    洛咕 题意: 给定 \(n\) 和一个长度为 \(n\) 的数组 \(a\),求一个最长的区间 \(\left[l,r\right]\),使得存在 \(m\geq 2\) 和 \(k\),对于所有 \ ...

  8. recastnavigation计算三角形离给定点最近位置方法简单注释

    三角形 在recastnavigation中,三角形是最基础的元素,很多逻辑都是基于三角形进行的,其中比较常见的一个操作就是计算指定点到某三角形上的最近距离.由于三角形通常代表行走面,而给定点P可能是 ...

  9. Retrofit简要分析

    Retrofit是对网络请求实现了一套请求架构封装,屏蔽底层网络实现,使网络请求像调用本地接口一样 基本使用例子 public interface GitHubService {//定义request ...

  10. RNN,LSTM,BERT

    目录 RNN LSTM 计算公式 参数量计算 self-attention bert 论文 源码 问题 问题:bert中进行ner为什么没有使用crf:使用DL进行序列标注问题的时候CRF是必备嘛(t ...