需要引用js

<script src="js/jquery-3.3.1.js"></script>
<script src="js/LodopFuncs.js"></script>

<h2><font color="#009999">演示如何获得打印状态及控制打印:</font>
</h2>
<p>
1、先点<a href="javascript:MyPrint()">执行打印</a>获得该打印的JOB代码:<input type="text" id="T1" size="48"><br>
</p>

2、<input type="button" value="获得该JOB是否已经打印成功:"
onclick="document.getElementById('T2').value = getStatusValue('PRINT_STATUS_OK', document.getElementById('T1').value, document.getElementById('T2'))"><input type="text" id="T2" size="48">(1-成功
0-不成功)<br>
3、<input type="button" value="获得该JOB是否还处在队列中:"
onclick="document.getElementById('T3').value = getStatusValue('PRINT_STATUS_EXIST', document.getElementById('T1').value, document.getElementById('T3'))"><input type="text" id="T3" size="48">(1-在
0-不在,可能已打完或未打而删除,不在队列里说明打印成功)<br />
12.<asp:Button ID="Button1" runat="server" Text="判断" />
<input type="button" value="测试" onclick="document.getElementById('Text1').value = getStatusValue('PRINT_STATUS_EXIST', document.getElementById('T1').value, document.getElementById('Text1'))" />
<input type="text" id="Text1" size="48">
<br />
<script type="text/javascript">
var LODOP, P_ID = "", TaskID1, TaskID2, t, waiting = false, c = 0, loop = 0; //声明为全局变量

function getStatusValue(ValueType, ValueIndex, oResultOB) {
LODOP = getLodop();
if (LODOP.CVERSION) LODOP.On_Return = function (TaskID, Value) { oResultOB.value = Value; };
var strResult = LODOP.GET_VALUE(ValueType, ValueIndex);
if (!LODOP.CVERSION) return strResult; else return "";
};
function MyPrint() {
LODOP = getLodop();
LODOP.PRINT_INIT("打印控件功能演示_Lodop功能_获得打印状态1");
LODOP.ADD_PRINT_TEXT(50, 231, 260, 39, "打印的第一页内容");
//LODOP.NEWPAGEA();
//LODOP.ADD_PRINT_TEXT(50, 231, 260, 39, "打印的第二页内容");

LODOP.SET_PRINT_MODE("CATCH_PRINT_STATUS", true);
if (LODOP.CVERSION) {
LODOP.On_Return = function (TaskID, Value) { document.getElementById('T1').value = Value; };
//LODOP.PRINTA();
LODOP.PRINT();
return;
} else document.getElementById('T1').value = LODOP.PRINTA();

};

$(function () {
$("#Button1").click(function () {
var b = document.getElementById('T1').value;
// var c = document.getElementById('T3');
var d = document.getElementById('Text1');
var a = getStatusValue('PRINT_STATUS_EXIST', b, d);
alert(a)
// document.getElementById('T3').value = a;
});
});
</script>

一般情况下,如果job不在队列中,那么就可以认为是打印成功

lodop判断是否打印成功的更多相关文章

  1. lodop和c-lodop通过打印状态和任务不在队列获取打印成功

    之前的博文有通过判断pirnt的返回值,判断加入队列算打印成功,建议使用这种简单的判断方法.此外还有其他判断方法,例如通过PRINT_STATUS_OK判断,但是这个状态不是所有打印机能支持这种判断成 ...

  2. LODOP获取打印成功,是否加入队列

    之前博文介绍过获取打印机状态码 LODOP获取打印机状态码和状态码含义测试,但是打印机种类千差万别,状态码不一定准确,特别是打印成功的状态码,获取任务不在队列,可以判断打印成功,删除任务也是任务不在队 ...

  3. LODOP判断没成功发送任务-重打一下

    一般情况下打印执行了PRINT()或PRINTA(),就会加入打印机队列,如果打印机脱机,就会在队列里排队,当打印机连上并取消脱机的时候,正在排队的任务就会打出,所以一般建议用是否加入队列来判断打印成 ...

  4. 前端使用lodop如何获取打印状态

    前面已经说过,如何简单使用lodop了,今天说一下如何获得lodop的打印状态? 在教程里面找了半天,摸索出来了一套. template: <!-- 实验代码 --> <div> ...

  5. 前端使用lodop插件进行打印设置

    先前梳理了后台打印导出参考:https://www.cnblogs.com/yyk1226/p/9856032.html,但是没有显示出来打印预览页面. 本章使用Lodop插件进行打印设置,实现打印机 ...

  6. socket异步通信-如何设置成非阻塞模式、非阻塞模式下判断connect成功(失败)、判断recv/recvfrom成功(失败)、判断send/sendto

    socket异步通信-如何设置成非阻塞模式.非阻塞模式下判断connect成功(失败).判断recv/recvfrom成功(失败).判断send/sendto 博客分类: Linux Socket s ...

  7. openerp模块收藏 基于Lodop的报表打印模块(转载)

    基于Lodop的报表打印模块 原文:http://shine-it.net/index.php/topic,7397.0.html 前段时间写了个小模块,来解决OE中报表打印不方便的问题.借鉴了 @b ...

  8. LODOP不同电脑打印效果不同排查

    1.位置不同,偏移问题.详细的相关偏移问题的博文:LODOP不同打印机出现偏移问题 2.样式问题. 本机浏览器解析样式不同 ,相关超文本样式博文:Lodop打印控件传入css样式.看是否传入正确样式 ...

  9. thinkPHP判断是否修改成功

    thinkPHP中使用save方法来更新数据的save方法的正常执行时返回值是影响的记录数,出错时返回false,返回为0和返回false在很多业务场景下都是不同的. 而当修改的内容和原有内容一致的时 ...

随机推荐

  1. Android 为 TextView 添加超链接 (网址,邮件,电话)

    <string name="info">Cette application a été développée par <a href="http://w ...

  2. WPF Adorner 在TabControl切换TabItem时消失

    错误的截图: 一开始以为是MVVM绑定的代码中出现了问题,但是通过断点追踪并没有发现问题. 通过通过VS的实时可视化树发现问题:切换Item时Adorner会在AdornerLayer直接消失.届时怀 ...

  3. JDBC技术(汇聚页)

    JDBC代表Java数据库连接(Java Database Connectivity),它是用于Java编程语言和数据库之间的数据库无关连接的标准Java API, 换句话说:JDBC是用于在Java ...

  4. Instant low voltage or power off to make computer power burn down

    严重则可造成硬盘直接报废! 原理:瞬间低压或者断电,滤波电容上存储的电能已经被使用,此时再瞬间供电则会重新对电容充电,而限流电阻还没有恢复到保护状态,于是会产生很大的冲击电流,从而导致了全桥元件或保险 ...

  5. luncene 查询字符串的解析-QueryParser类

    搜索流程中的第二步就是构建一个Query.下面就来介绍Query及其构建. 当用户输入一个关键字,搜索引擎接收到后,并不是立刻就将它放入后台开始进行关键字的检索,而应当首先对这个关键字进行一定的分析和 ...

  6. Java中类变量和实例变量的初始化

    1. 类变量和实例变量 类变量即类成员变量中的静态变量,它们可以通过类名来直接访问. 实例变量是类成员变量中的非静态变量,只有在实例化对象之后通过对象来访问. 2. 空间分配的时间不同 类变量是在类加 ...

  7. AWS 推出长期支持的 OpenJDK 免费分发版本 —— Amazon Corretto

    简评:听说 Oracle JDK 要收费了,Oracle 要限制 Java 的商业或生产用途,针对这个问题,AWS 将会推出 Amazon Corretto. Java 是 AWS 用户使用的最流行的 ...

  8. POJ1095 Trees Made to Order(JAVA)

    这题用到了卡特兰数,比较麻烦.关于卡特兰数的基本概念百度一下你就知道. 使用卡特兰数对数组元素进行分组之后,需要具体计算一下要求的是第几组的第几个数,然后向下递归. 首先来看利用卡特兰数分组: 从1开 ...

  9. Hadoop虚拟机的jdk版本和本地eclipse的版本不一致怎么办

    在本周学习Hadoop遇到了一个问题,困扰了半天,本人在安装Hadoop时是按照视频来的,结果发现Hadoop上的jdk版本和本地eclipse的版本不一致,导致本地的程序到处jar包传到虚拟机上运用 ...

  10. 架构师养成记--19.netty

    一.Netty初步 为什么选择Netty? 和NIO比较,要实现一个通信要简单得很多,性能很好.分布式消息中间件.storm.Dubble都是使用Netty作为底层通信. Netty5.0要求jdk1 ...