LODOP的语句是普通的语句,可以通过JS判断确定要执行哪个,或通过循环循环执行一些语句。
如果需要执行某些打印项在哪些条件下不打印,不需要通过代码删除打印项,类似LODOP.SET_PRINT_STYLEA(2,'Deleted',true);这种语句,只能在打印设计和维护内嵌时执行,弹出方式或打印预览是没有效果的,具体可查看本博客另一篇详细测试博文:Lodop删除语句Deleted只能内嵌设计维护可用

其实,如果某些打印项在某些条件下不需要打印,不需要删除该打印项本身,可以不执行添加该打印项的语句,根本不添加该打印项,或者给该打印项设置不预览不打印,这样预览或打印的时候就不会显示该打印项了。

1.通过判断决定是否添加该打印项。
判断某条件成立,添加该打印项,判断不成立,根本不添加。在执行的时候只要不执行添加该打印项的这句,就不会在任务里添加上,也就根本不需要删除。
(通过该方法,打印项根本不存在)

2.通过判断决定该打印项是否预览打印。
判断某条件成立,设置该打印项不预览不打印,默认是预览打印的。在执行的时候,只要执行了该不预览不打印样式,就不会在预览或打印中出现。
(通过该方法,打印项本身存在,样式是不预览不打印)
例如不预览不打印:LODOP.SET_PRINT_STYLEA(0,"PreviewOnly",2);}//打印项不预览不打印

测试代码:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>WEB打印控件LODOP</title>
<script language="javascript" src="LodopFuncs.js"></script>
</head>
<body>
<input type="text" id="T1" size="78" value=""><br>
<a href="javascript:prn1_preview()">判断后执行哪个打印项</a><br>
<a href="javascript:prn2_preview()">判断后执行是否让某个打印项不预览不打印</a>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop();
var a=document.getElementById("T1").value;
LODOP.PRINT_INIT("");
if(a)
LODOP.ADD_PRINT_BARCODE(28,34,307,47,"128A","123456789012");
//判断T1文本框有内容的时候执行该句
else
{LODOP.ADD_PRINT_TEXT(28,53,100,25,"输出的内容是空的");}
//判断T1文本框无内容的时候执行该句
LODOP.PRINT_DESIGN();
};
function prn2_preview() {
LODOP=getLodop();
var a=document.getElementById("T1").value;
LODOP.PRINT_INIT("");
LODOP.ADD_PRINT_BARCODE(28,34,307,47,"128A","123456789012");
LODOP.ADD_PRINT_TEXT(28,53,100,25,"输出的内容是空的");
if(!a)
{LODOP.SET_PRINT_STYLEA(0,"PreviewOnly",2);}//打印项不预览不打印
//判断T1文本框无内容的时候执行该句
LODOP.PRINT_DESIGN();//设计有,预览没有,打印没有
};
</script>
</body>

如图:

LODOP设置判断后执行哪个的更多相关文章

  1. 解决Button设置disabled后无法执行后台代码问题

    一.开始调式下面的程序,发现Button在js中设置disabled后无法执行后台代码(btnsave_Click)问题 <asp:Button ID="btnsave" r ...

  2. 设置N秒后执行某个方法或函数

    设置N秒后执行一个函数,最常用的是设置一个定时器,今天刚看到有这样一个函数,感觉还是比较简单实用的,就先记下来,免得忘记了. 5秒后执行pushSecondController这个函数 [self p ...

  3. jmeter 通过csv data set config 设置参数化后,执行结果显示为<EOF>

    通过csv data set config 设置参数化后,执行结果显示为<EOF>: 反复确认相应的参数的设置均没有问题,其中csv文件编码方式采用uft-8.在csv data set ...

  4. LODOP设置打印机不存在不打印

    LODOP中打印机的选择有优先级的存在,如果程序中指定的是错误的打印机,那么会走下一个优先级,这样,就可能存在选择了打印机无效,从默认打印机打印出来了,可以在代码里加判断避免这一点. 打印机优先级简介 ...

  5. iOS通知中心升级 -可设置按优先级执行block

    简单介绍下,这是需求驱动中发现iOS的NotificationCenter有很多功能无法实现,于是对其进行了一层包装.相当于手动管理观察者栈和监听者期望执行的事件,因此可以为其添加了很多新增的功能,将 ...

  6. ready是先执行的,load后执行,DOM文档的加载步骤

    在jq中在文档载入完毕后有这几种方式去执行指定函数: $(document).ready(function() { // ...代码... }); //document ready 简写 $(func ...

  7. LODOP设置同一个任务发送到不同打印机

    前面的博文Lodop打印语句最基本结构介绍(什么是一个任务),一个任务只能有一个打印语句(最后PRINT,PRINTA,PREVIEW等),如果执行多个,LODOP会弹出多次,C-LODOP会提示窗口 ...

  8. 小程序textarea设置maxlength后不是你想的那样简单

    可能很多小伙伴们.看见这个标题后; 觉得作者是一个标题党. textarea设置maxlength后, 限制用户输入的字符呗! 还能怎么样呢? 恭喜你,说对了一半. 之前我也一直是这样想的. 知道今天 ...

  9. Inno Setup入门(十一)——完成安装后执行某些程序

    Inno Setup入门(十一)——完成安装后执行某些程序 2011-02-16 16:24:23|  分类: Inno Setup |  标签:inno  setup   |举报 |字号 订阅   ...

随机推荐

  1. tomcat 启动慢问题

    主要原因: 生成随机数的时候卡住了,导致tomcat启动不了. 是否有足够的熵来用于产生随机数,可以通过如下命令来查看 [root@oldboy tools]# cat /proc/sys/kerne ...

  2. ESP8266开发综合篇第十四节(LUA)-8266作为TCP服务器,Android客户端连接,显示温湿度,控制继电器

    前几节先略过,我先补充上大部分人迫切的需求 编写Android TCP客户端  用Android Studio 先做一下界面 然后放一个输入对话框,因为没有显示出来这个控件.所以就手写 剩下的自己研究 ...

  3. abp 基于api接口的页面内容提交

    项目中,后端api接口需要接收来自页面提交的数据.注意下拉控件对应值,应该按以下方式赋值 @Html.DropDownListFor(m => m.IsFolder, new List<S ...

  4. Ext中 grid 设置行样式

    //设置样式   JS var SetRowClass = function(record, rowIndex, rowParams, store) { if (record.data.status ...

  5. 网盘直链工具 winform版 V1.0

    软件需要.net2.0支持 win7及以上版本用户无需安装 xp用户需要安装 支持网盘:好盘 坚果云 百度云 乐视云 华为网盘 微云 新浪网盘 126disk 速度盘 乐齐盘 天空网盘 千脑网盘 可乐 ...

  6. 【原创】从策略模式闲扯到lambda表达式

    引言 策略模式,讲这个模式的文章很多,但都缺乏一个循序渐进的过程.讲lambda表达式的文章也很多,但基本都是堆砌一堆的概念,很少带有自己的见解.博主一时兴起,想写一篇这二者的文章.需要说明的是,在看 ...

  7. 六、input框中的数字(金额)只能输入正整数

    <input type="text" placeholder="请输入整数" onkeyup="this.value=this.value.re ...

  8. Leetcode-645 Set Mismatch

    The set S originally contains numbers from 1 to n. But unfortunately, due to the data error, one of ...

  9. 二维数组中的查找问题--剑指offer面试题3

    题目:在一个二维数组中,对每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. // 二维数组中的查找 ...

  10. Python-爬虫小例子-55

    import re from urllib.request import urlopen def getPage(url): response = urlopen(url) return respon ...