📄 print.js
字号:
// JavaScript Document
//Web Print system javascript library. Powered By YangJianshan At 2003-10-27.
function popupWin(windowref,winname)
{
windowref.open("",winname,"height=350px,width=393px,location=no,titlebar=yes,toolbar=no,scrollbars=yes,fullscreen=no,menubar=no,resizable=no,status=no,directories=no");
}
function showPrintSetupDialog(strSQL,strCheckList,strDelimiter,strUrl){
var parameters=new Array(4);
parameters[0]=new Array("WindowHandle",window);
parameters[1]=new Array("SQL",strSQL);
parameters[2]=new Array("FieldCheckList",strCheckList);
parameters[3]=new Array("Delimiter",strDelimiter);
var winref=window.showModalDialog(strUrl+"?SQL="+strSQL,parameters,"dialogHeight:350px;dialogWidth:393px;center:yes;help:no;resizable:no;status:no;scroll=no;dialogHide:yes");
}
function doBeforePrint()
{
hiddenPageToolBar();
}
function doAfterPrint()
{
showPageToolBar();
}
function showPageToolBar()
{
document.getElementById("toolbar").style.display=""
}
function hiddenPageToolBar()
{
document.getElementById("toolbar").style.display="none";
}
function initPrint()
{
document.writeln(unescape("%3COBJECT%20classid%3DCLSID%3A8856F961-340A-11D0-A96B-00C04FD705A2%20height%3D0%20id%3DobjPrintProxy%20width%3D0%20style%3D%27display%3Anone%27%3E%3C/OBJECT%3E"));
window.resizeTo(screen.availWidth,screen.availHeight);
window.moveTo(0,0);
document.getElementById("OutterTable").width=screen.availWidth;
document.getElementById("OutterTable").height=screen.availHeight;
window.focus();
window.onblur=activeWindow;
window.onbeforeprint=doBeforePrint;
window.onafterprint=doAfterPrint;
IEVersionCheck();
}
function doSetPrint()
{
objPrintProxy.ExecWB(8,1);
}
function IEVersionCheck()
{
if(isIE4())
alert("您的IE浏览器版本为4.x,建议您升级IE浏览器至最新版本!");
else if(isIE5())
alert("您的IE浏览器版本为5.x,建议您升级IE浏览器至最新版本!");
else if(isIE6())
alert("请在页面设置中,设定你要打印的页脚和页眉参数以及页码!");
else
alert("为了保证客户端程序的正常运行,推荐使用IE浏览器!");
}
function isIE6()
{
if(window.clientInformation.appName.indexOf("Microsoft Internet Explorer")!=-1&&window.clientInformation.appVersion.indexOf("MSIE 6.0")!=-1)
return true;
else
return false;
}
function isIE5()
{
if(window.clientInformation.appName.indexOf("Microsoft Internet Explorer")!=-1&&window.clientInformation.appVersion.indexOf("MSIE 5.0")!=-1)
return true;
else
return false;
}
function isIE4()
{
if(window.clientInformation.appName.indexOf("Microsoft Internet Explorer")!=-1&&window.clientInformation.appVersion.indexOf("MSIE 4.0")!=-1)
return true;
else
return false;
}
function doIEHTTPSearch()
{
objPrintProxy.ExecWB(32,1);
}
function doIECloseWindow()
{
objPrintProxy.ExecWB(45,0);
}
function doIERefresh()
{
objPrintProxy.ExecWB(22,1);
}
function doPreviewPrint()
{
if(isIE6())
objPrintProxy.ExecWB(7,1);
else
alert("浏览器不支持此功能!请将IE浏览器升级至最新版本!");
}
function doPrintNoAsk()
{
if(window.print!=null)
objPrintProxy.ExecWB(6,6);
else
alert("打印机未就绪!");
}
function doPrint()
{
if(window.print!=null)
window.print();
else
alert("打印机未就绪!");
}
function activeWindow()
{
window.focus();
}
function decode(cryptograph)
{
return unescape(cryptograph);
}
function encode(plaintext)
{
return escape(plaintext);
}
function initPrintParameters(form,parameters)
{
form.frmSQL.value=parameters[1][1];
form.frmCheckList.value=parameters[2][1];
form.frmDelimiter.value=parameters[3][1];
var arrayCheckList=parseCheckList(form.frmCheckList.value,form.frmDelimiter.value);
for(var i=0;i<arrayCheckList.length;i++)
appendtolist(form.frmAvailableFields,arrayCheckList[i][1],arrayCheckList[i][0]);
}
function parseCheckList(checklist,delimeter)
{
var arrayCheckList,arrayKey;
arrayKey=checklist.split(delimeter);
arrayCheckList=new Array(arrayKey.length);
for(var i=0;i<arrayKey.length;i++)
{
temp=arrayKey[i].split("=");
arrayCheckList[i]=new Array(2);
arrayCheckList[i][0]=temp[0];
arrayCheckList[i][1]=temp[1];
}
return arrayCheckList;
}
function GenSelectedCheckList(field,delimiter)
{
var checklist="";
if(field.options.length>0)
{
for(var i=0;i<field.options.length;i++)
{
checklist+=field.options[i].value+"="+field.options[i].text;
if(i<field.options.length-1) checklist+=delimiter;
}
}
return checklist;
}
function validForm(form)
{
if(form.frmSelectedFields.options.length<1)
{
alert("至少选择一个显示字段!");
return false;
}
var intStart,intEnd,intPageSize;
intStart=parseInt(form.frmStartRange.value);
intEnd=parseInt(form.frmEndRange.value);
if(form.frmRangeType.value=="0")
{
intPageSize=parseInt(form.frmPageSize.value);
form.frmStartNO.value=""+((intStart-1)*intPageSize+1);
form.frmEndNO.value=""+(intEnd*intPageSize);
}else if(form.frmRangeType.value=="1")
{
form.frmStartNO.value=""+intStart;
form.frmEndNO.value=""+intEnd;
}
form.frmCheckList.value=GenSelectedCheckList(form.frmSelectedFields,form.frmDelimiter.value);
popupWin(window.dialogArguments[0][1],"PrePrintWindow");
//alert(form.frmCheckList.value);
return true;
}
function getActionURLByPrintModel(field)
{
if(field[0].checked)
return "doListPrintPreview.jsp";
else if(field[1].checked)
return "doDisplayPrintPreview.jsp";
else if(field[2].checked)
return "doReportPrintPreview.jsp";
else
return "doListPreview.jsp";
}
function checkParas()
{
validRangeValue(formFields.frmStartRange,formFields.frmEndRange,formFields.frmRangeType,formFields.frmPageSize,formFields.frmMaxRecordCount);
}
function validRangeValue(fieldStartRange,fieldEndRange,fieldRangeType,fieldPageSize,fieldMaxRecCount)
{
var intStart,intEnd,intPageSize,intMaxPageCount,intMaxRecCount,intMaxRange,intTmp;
intMaxRecCount=parseInt(fieldMaxRecCount.value);
if(fieldRangeType.value=="0")
{
if(!isValidNumber(fieldPageSize.value))
{
fieldPageSize.value="10";
}
intPageSize=parseInt(fieldPageSize.value);
if(intPageSize>intMaxRecCount)
{
intPageSize=intMaxRecCount;
fieldPageSize.value=""+intPageSize;
}else if(intPageSize<1)
{
intPageSize=10;
fieldPageSize.value=""+intPageSize;
}
intMaxPageCount=Math.ceil(intMaxRecCount/intPageSize);
intMaxRange=intMaxPageCount;
}else if(fieldRangeType.value=="1")
{
intMaxRange=intMaxRecCount;
}
if(!isValidNumber(fieldStartRange.value))
{
fieldStartRange.value="1";
}
if(!isValidNumber(fieldEndRange.value))
{
fieldEndRange.value=""+intMaxRange;
}
intStart=parseInt(fieldStartRange.value);
intEnd=parseInt(fieldEndRange.value);
if(intStart>intMaxRange)
{
intStart=intMaxRange;
fieldStartRange.value=""+intStart;
}else if(intStart<1)
{
intStart=1;
fieldStartRange.value=""+intStart;
}
if(intEnd>intMaxRange||intEnd<1)
{
intEnd=intMaxRange;
fieldEndRange.value=""+intEnd;
}
if(intEnd<intStart)
{
intTmp=intStart;
intStart=intEnd;
intEnd=intTmp;
fieldStartRange.value=""+intStart;
fieldEndRange.value=""+intEnd;
}
}
function isValidNumber(input)
{
var reg=/^\d{1,}$/;
if(input.search(reg)==-1)
{
return false;
}
return true;
}
function synchronizeValue(fieldA,fieldB,field)
{
fieldB.value=fieldA.value;
field.value=fieldA.value;
if(fieldA.value=="0")
{
document.getElementById("PageSizeSetup").style.display="";
}
else if(fieldA.value=="1")
{
document.getElementById("PageSizeSetup").style.display="none";
}
checkParas();
}
function transferAll(from,to)
{
var count=from.length;
while(from.length>0)
{
from.options[0].selected=true;
transfer(from,to);
}
}
function appendtolist(field,ptext,pvalue)
{
var op=document.createElement("OPTION");
op.text=ptext;
op.value=pvalue;
field.add(op);
}
function transfer(from,to)
{
var isNothingChecked=true;
var count=from.length;
for(var i=count-1;i>=0;i--)
{
if (from.options[i].selected==true)
{
isNothingChecked=false;
lt=from.options[i].text;
lv=from.options[i].value;
appendtolist(to,lt,lv);
from.remove(i);
}
}
if(isNothingChecked&&from.length>0) from.selectedIndex=from.length-1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -