Lodop提示BarCode Type(ena13)Invalid!

前段时间遇到过一个奇怪的问题,就是代码里本身都是ENA13大写,却提示条码类型无效,而且进入打印设计后,选中打印项,条码类型变成了code39,但是实际是还有条码类型参数都是正确的,代码看上去没有问题。
个人实际测试了一下出问题的代码,发现把ENA13的单引号变成双引号,这个提示就没了,奇怪的问题,JS中单双引号明明效果是一样的。
本人用单引号测试了几个其他位置的同样和不同样的ENA13条码,位置参数用默认值和字符型都对比了几次,条码值也无关,都没有报错,而且这个有问题的条码语句,单纯的把宽度修改或高度修改,也不会再报错,所以是个比较奇怪的问题,目前没有找到什么原因导致的,数值也没超出范围,修改成双引号就正常了,换成其他数值也正常。

解决方法就是给ENA13这个参数字符串,用双引号包裹起来,就可以不再提示。

测试代码:

<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>
<a href="javascript:prn1_preview()">单引号的条码类型</a><br>
<a href="javascript:prn2_preview()">双引号的条码类型</a><br>
<a href="javascript:prn3_preview()">测试没有发现ean</a><br>
<script language="javascript" type="text/javascript">   
        var LODOP; //声明为全局变量 
    function prn1_preview() {
        LODOP=getLodop(); 
        LODOP.PRINT_INIT("");
        LODOP.ADD_PRINT_BARCODE('38mm','45mm','36.35mm','6mm','ENA13','2120389000014');//不正常,提示
        LODOP.PREVIEW();    
    };
    function prn2_preview() {
        LODOP=getLodop(); 
        LODOP.PRINT_INIT("");
        LODOP.ADD_PRINT_BARCODE('38mm','45mm','36.35mm','6mm',"EAN13",'2120389000014');//正常
        LODOP.PREVIEW();    
    };
     function prn3_preview() {
        LODOP=getLodop(); 
        LODOP.PRINT_INIT("");
        LODOP.ADD_PRINT_BARCODE(28,34,307,47,'EAN13','2120389000014');//其他位置参数,正常
        //LODOP.ADD_PRINT_BARCODE('38mm','45mm','36.35mm','6mm','ENA13','2120389000014');//有问题的语句
        LODOP.PRINT_DESIGN();
        //LODOP.PREVIEW();    
    };
</script> 
</body>

图示:

该问题比较奇怪,原因不明,代码里条码类型没有问题。其他值也没有影响,改成双引号就好了。

posted @ 2019-04-29 14:35  花谢悦神  阅读(783)  评论(0编辑  收藏  举报