欢迎来到元素模板ys720.com,本站提供专业的织梦模板PBOOTCMS模板网站模板网站修改/网站仿站
当前位置:主页 > 程序教程 > 其他教程 >
其他教程

C-LODOP回调多个返回值On_Return_Remain

(元素模板) / 2022-12-19 10:14

c-lodop默认一次只能回调一个值,回调后会销毁,如果想回调多个值,可加该语句:LODOP.On_Return_Remain=true;
中回调了两个动作函数的返回值。

如果有需要回调两个以上,写法相同,通过taskid进行区分。
本文的例子写法只是在c-lodop下使用,如果要用混合部署,还要加判断是否为c-lodop,lodop不需要回调,可直接返回。
测试的是打印任务的页数,打印纸张的宽度,打印的打印机(都需要先预览或打印才能获取)
测试代码:
 

<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:prn0_preview()">先点打印预览</a><br>
<a href="javascript:prn2_preview()">后用回调获取一些信息</a><br>
<a href="javascript:prn3_preview()">在另一个方法里输出刚才回调赋的值</a><br>
<div id="div1">
<p id="view">显示</p>
</div>
<script language="javascript" type="text/javascript">   
        var LODOP; //声明为全局变量 
        var str="原始值";
    function prn0_preview() {//该任务有两页,为强制分页所得
        LODOP=getLodop(); 
        LODOP.PRINT_INIT("");
        LODOP.ADD_PRINT_TEXT(0,0,100,20,"文本内容一");
        LODOP.NEWPAGE();
        LODOP.ADD_PRINT_TEXT(0,0,100,20,"文本内容一");
        LODOP.PREVIEW();    
    };
    function prn2_preview() {
        LODOP=getLodop(); 
       var TaskID1,TaskID2,TaskID3;
       LODOP.On_Return_Remain=true;
       LODOP.On_Return=function(TaskID,Value){ 
           if (TaskID== TaskID1) {
           str="该任务共有"+Value+"页。<br>";
           console.log(str);
           } else if (TaskID== TaskID2) {
                  str+="该任务的纸张宽度"+Value+"。<br>";
                  console.log(str);
           } else if (TaskID== TaskID3) {
                   str+="该任务所用的打印机的名称是"+Value+"。<br>";
                   console.log(str);
                   var p_view=document.getElementById("view");
                    p_view.innerHTML=str;
           };
       };
       TaskID1=LODOP.GET_VALUE("PRINTSETUP_PAGE_COUNT","0");//获取页数
       TaskID2=LODOP.GET_VALUE('PRINTSETUP_PAGE_WIDTH',"0");//获取纸张宽度
       TaskID3=LODOP.GET_VALUE('PRINTSETUP_PRINTER_NAME',"0");//获取当前所用的打印机名称
 };
    function prn3_preview() {
     console.log("这是另一个方法里输出的该全局变量的该值"+str);
    };
</script> 
</body>
Copyright @ 2013-2021 元素模板 www.ys720.com All Rights Reserved. 版权所有 元素模板 www.ys720.com