Lodop模版有两种方法,一种是传统的JS语句,可以用JS方法里的eval来执行,一种是文档式模版,是特殊格式的base64码,此篇博文介绍文档式模版的加载,文档式模版的生成以及传统JS模版的生成加载赋值等,可查看本博客其他博文。Lodop的JS模版代码、文档式模版 生成加载赋值博文索引
加载文档式模版的方法是:
LODOP.ADD_PRINT_DATA("ProgramData",模版字符串); //装载模板
赋值方法和前面JS模版的第二种赋值方式一样,加载模版后赋值。
LODOP.SET_PRINT_STYLEA(类名序号等,"CONTENT", 新赋的值); //根据打印项类名赋值
测试代码:
<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>
<textarea rows="10" id="S1" cols="98" >
@J0yHEH1QG1IBIS0APyMOGSISCGDAPt0XJ1OFGyECHS0APxyHEH1DLJ5yoSODIRj9ZN0XFIESGGR9AwZAPxyHEH0lCGRjZD0XFIESGGZ9ZwxAPxyHEH00CGxAPt0XJ1OFGxkSEyEqQDcWIRIAHTShMJkDHSEZCGNAPxyHEH0kCGH3QDcWIRIAZw01Aj0XFIESGGZ9AGpAPxyHEH00CGV2QDbAPygDHx5KFHEHFS0APxyHEH1DLJ5yoSODIRj9BQNjQDcWIRIAZG0lBGtAPxyHEH0lCGV5BN0XFIESGGZ9Zwx4QDcWIRIAAQ0mAwLAPt0XJ1OFGxuSFHqVIS0APxyHEH1DLJ5yoSODIRj9AwNjQDcWIRIAZG0lZN0XFIESGGV9ZwNAPxyHEH0mCGVjQDcWIRIAAQ0kZmpAPt0XJ1OFGyOSGyqWESEVKD0XFIESGGD9ZD0XQDcoHSWBH0uOHRIHJIOSKD0XFIESGGD9Zt0XQDcoD0kOH1AWGxESJS0APxyHEH0kCGVAPxyHEH0lCGVAPxyHEH0mCGVAPxyHEH00CGZAPt0XJ0AioaEyoaEqQDcWIRIAHTShMJkDHSEZCIEgBISwoJk1MRMFnTZlqR9MImSfQDcWIRIAZG01Jay3AIblDD0XFIESGGV9AGIGZGMYX2DAPxyHEH0mCGIuMID1JxABQDbAPygcqTIgozSgMI0APxyHEH0kCHEnQDcWIRIAZw1RFN0XFIESGGZ9JR0APt0XJ1A0rJkyGzSgMKAmKD0XFIESGGR9nKEyoJ5uoJH7QDcWIRIAZw1cqTIgozSgMGfAPxyHEH0mCJy0MJ1hLJ1yBj0XJ0yHEH1SGxEqQDb=
</textarea><br>
<a href="javascript:prn1_preview()">加载原始文档式模版</a><br>
请输入姓名: <input type="text" id="B1" size="5"> <br>
请输入地址: <input type="text" id="Z1" size="5"><br>
请输入电话: <input type="text" id="N1" size="50"><br>
<a href="javascript:prn2_preview()">加载页面输入的新内容的该文档式模版</a>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview(){
LODOP=getLodop();
LODOP.ADD_PRINT_DATA("ProgramData",document.getElementById('S1').value); //装载模板
//LODOP.PREVIEW();
LODOP.PRINT_DESIGN();
};
function prn2_preview(){
LODOP=getLodop();
LODOP.ADD_PRINT_DATA("ProgramData",document.getElementById('S1').value); //装载模板
LODOP.SET_PRINT_STYLEA("XM","CONTENT", document.getElementById('B1').value); //根据打印项类名赋值
LODOP.SET_PRINT_STYLEA("DZ","CONTENT", document.getElementById('Z1').value); //根据打印项类名赋值
LODOP.SET_PRINT_STYLEA("DH","CONTENT", document.getElementById('N1').value); //根据打印项类名赋值
LODOP.PREVIEW();
//注意,如果类名有重复的,赋值时所有相同类名的打印项的值都会被替换
};
</script>
</body>
图示:
文档式模版是特殊base64码,这里先把打印预览临时改成打印设计,在打印设计里的生成代码里查看下JS代码模版,通过JS代码和左侧打印项列表,直观的看到设计了哪些打印项。