📄 function.js
字号:
}
function isEmpty(s)
{
return ((s == null) || (s.length == 0))
}
//判断字符串中是否包含空白,空白是指:空格,制表符,回车换行
//郭宝华,2003-12-15 coding
function hasWhitespace (s)
{
var whitespace = " \t\n\r";
var i;
for (i = 0; i < s.length; i++)
{
var c = s.charAt(i);
if (whitespace.indexOf(c) >= 0)
{
return false;
}
}
return true;
}
function QuotedString(varTemp)
{
if(varTemp=="")
{
return( "''");
}
else
{
var tmp;
tmp=varTemp.replace("'", "''");
tmp = "'" + tmp + "'";
return(tmp);
}
}
//判断字符串中是否包含汉字
//郭宝华,2003-12-15 coding
function hasChn(str)
{
var ch, i;
for ( i=0; i< str.length; i++){
ch = str.charCodeAt( i );
if ( ch<0 ) ch = ch + 65536;
if ( ch>255 ) return(true);
}
return (false);
}
//替换字符串中的文字
//郭宝华,2004-2-26 coding
function replace(rgExp,replaceText,toText)
{
var j=0;
while(rgExp.indexOf(replaceText)!=-1 && j<100)
{
rgExp=rgExp.replace(replaceText,toText);
j=j+1;
}
return(rgExp);
}
//计算字符串的长度,一个英文字符长度为1,一个汉字为2
//郭宝华,2003-12-15 coding
function strLen(str)
{
var Chinese_OS;
var strTest, ch, slen, i;
Chinese_OS = false;
strTest = "中文";
if ( strTest.length == 2 ) Chinese_OS = true;
if ( Chinese_OS ) {
slen = 0;
for ( i=0; i< str.length; i++){
ch = str.charCodeAt( i );
if ( ch<0 ) ch = ch + 65536;
if ( ch>255 ) slen = slen +1;
slen = slen +1;
}
}
else
{
slen = str.length
}
return (slen);
}
//找出ID在IDs中的位置,以0为基
function GetIndex(ID,IDs)
{
for (var i=1 ; i<=IDs.length; i++)
{
if(ID==IDs[i-1])
{
return (i-1);
}
}
return (-1);
}
function GetNewOrder(strOrderBy,strOldOrderBy)
{
//支持多级排序,最新的排序需求最优先。
var arrayOrderBy,strNewOrderBy;
var OldCount;
if (JTrim(strOldOrderBy)!="")
{
//此前有过排序
arrayOrderBy=strOldOrderBy.split(",");
strOldOrderBy="";
strNewOrderBy="";
//旧排序,最多借用2个,其它的废弃
if(arrayOrderBy.length>2)
OldCount=2;
else
OldCount=arrayOrderBy.length;
for (var i = 0; i < OldCount; i++)
{
if(arrayOrderBy[i].indexOf(strOrderBy)!=-1)
{
//发现最新字段存在于旧排序中
if(arrayOrderBy[i].indexOf("desc")==-1)
{
//此前排的是正序
strNewOrderBy=strOrderBy + " desc";
}
else
{
//此前排的是倒序
strNewOrderBy=strOrderBy + " asc";
}
}
else
{
//改造旧排序
strOldOrderBy=strOldOrderBy + arrayOrderBy[i] + ",";
}
}
if(JTrim(strNewOrderBy)=="")
{
//最新字段不存在于旧排序中
strNewOrderBy=strOrderBy + " desc";
}
if (JTrim(strOldOrderBy)!="")
{
//去掉改造后的旧排序中最后一个逗号
strOldOrderBy=strOldOrderBy.substr(0,strOldOrderBy.length-1);
strNewOrderBy=strNewOrderBy + "," + strOldOrderBy;
}
}
else
{
//此前未排序过
strNewOrderBy=strOrderBy + " desc";
}
return(strNewOrderBy);
}
function OpenAttach(file) {
try
{
window.open (file) //此处不要设定window名称,用户有可能需要开启多个附件
}
catch(e)
{
alert('打开附件失败。\n请检查当前浏览器版本,建议使用IE6.0以上版本。')
}
}
function OpenHyperLink(myLink)
{
var FileProtocol,HTTPProtocol;
myLink=JTrim(myLink);
if(myLink.length>0)
{
var myPro;
FileProtocol="file:"
HTTPProtocol="http:"
myPro=myLink.substr(0,5);
if(myPro!=FileProtocol && myPro!=HTTPProtocol)
myLink=FileProtocol + myLink; //default to be file protocol
try
{
window.open (myLink); //此处不要设定window名称,用户有可能需要开启多个超链文件
}
catch(e)
{
alert('打开超链失败。\n请检查当前浏览器版本,建议使用IE6.0以上版本。')
}
}
}
function MM_swapImgRestore()
{ //v3.0
var i,x;
a=document.MM_sr;
for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++)
x.src=x.oSrc;
}
function MM_preloadImages()
{ //v3.0
var d=document;
if(d.images)
{
if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments;
for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0)
{
d.MM_p[j]=new Image;
d.MM_p[j++].src=a[i];
}
}
}
function MM_findObj(n, d) { //v4.0
var p,i,x;
if(!d) d=document;
if((p=n.indexOf("?"))>0&&parent.frames.length)
{
d=parent.frames[n.substring(p+1)].document;
n=n.substring(0,p);
}
if(!(x=d[n])&&d.all) x=d.all[n];
for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n);
return x;
}
function MM_swapImage()
{ //v3.0
var i,j=0,x,a=MM_swapImage.arguments;
document.MM_sr=new Array;
for(i=0;i<(a.length-2);i+=3)
if ((x=MM_findObj(a[i]))!=null)
{
document.MM_sr[j++]=x;
if(!x.oSrc) x.oSrc=x.src;
x.src=a[i+2];
}
}
function MM_findObj(n, d) { //v3.0
var p,i,x;
if(!d) d=document;
if((p=n.indexOf("?"))>0&&parent.frames.length)
{
d=parent.frames[n.substring(p+1)].document;
n=n.substring(0,p);
}
if(!(x=d[n])&&d.all) x=d.all[n];
for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
return x;
}
//listhead.asp 和 list.asp 中用到的一些共性的函数,页面中各元素须符合以下规则:
//1、listHead.asp、list.asp的容器(frame)名称,分别为 RightHead、RightData
//2、RightHead包括:当前排序OrderBy,页号CurPage
//3、RightData包括:行号RowIDs、可删行号CanDeleteRowIDs,各行的checkbox chkxxx,页号CurPage
//郭宝华,2004-2-20
function RowSelect()
{
var PageIDs,IDs;
var chk;
IDs=""
if(JTrim(RowIDs.value)!="")
{
PageIDs=RowIDs.value.split(",");
if(PageIDs.length>0)
{
for (i = 0; i <= PageIDs.length-1; i++)
{
eval("chk=chk"+JTrim(PageIDs[i])+".status");
if(chk==true)
{
IDs=IDs + "," + JTrim(PageIDs[i]);
}
}
if(IDs.length>0)
IDs=IDs.substr(1,IDs.length-1);
}
}
return(IDs);
}
function CheckDelAuth()
{
var PageIDs,DeleteAuthIDs,BadIDs;
var chk;
BadIDs=""
if(JTrim(RowIDs.value)!="")
{
PageIDs=RowIDs.value.split(",");
DeleteAuthIDs=CanDeleteRowIDs.value.split(",");
if(PageIDs.length>0)
{
for (i = 0; i <= PageIDs.length-1; i++)
{
eval("chk=chk"+JTrim(PageIDs[i])+".status");
if(chk==true)
{
if(DeleteAuthIDs[i]!="1")
{
BadIDs=BadIDs + "," + JTrim(PageIDs[i]);
}
}
}
if(BadIDs.length>0)
BadIDs=BadIDs.substr(1,BadIDs.length-1);
}
}
return(BadIDs);
}
function CheckAll()
{
var PageIDs;
if(JTrim(RowIDs.value)!="")
{
PageIDs=RowIDs.value.split(",");
if(PageIDs.length>0)
{
for (i = 0; i <= PageIDs.length-1; i++)
{
eval("chk"+JTrim(PageIDs[i])+".status=true;");
}
}
}
}
function ClearAll()
{
var PageIDs;
if(JTrim(RowIDs.value)!="")
{
PageIDs=RowIDs.value.split(",");
if(PageIDs.length>0)
{
for (i = 0; i <= PageIDs.length-1; i++)
{
eval("chk"+JTrim(PageIDs[i])+".status=false;");
}
}
}
}
function PrePage()
{
frmData.CurPage.value=parseInt(window.parent.RightData.CurPage.value)-1
GotoPage()
}
function PageSelect()
{
frmData.CurPage.value=SelectPage.selectedIndex+1
GotoPage()
}
function NextPage()
{
frmData.CurPage.value=parseInt(window.parent.RightData.CurPage.value)+1
GotoPage()
}
function GotoPage()
{
document.frmData.target ="RightData";
document.frmData.action="list.asp";
document.frmData.submit();
}
function ChgOrder(strOrderBy)
{
var strOldOrderBy;
if (JTrim(frmData.CurPage.value)!="")
{
frmData.CurPage.value=1
strOldOrderBy=document.frmData.OrderBy.value;
frmData.OrderBy.value=GetNewOrder(strOrderBy,strOldOrderBy);
frmData.target ="RightData";
frmData.action="list.asp";
frmData.submit();
}
}
function SelectAll()
{
if (frmData.CurPage.value>0)
{
if(chkAll.status==true)
window.parent.RightData.CheckAll();
else
window.parent.RightData.ClearAll();
}
}
//弹出主表记录选择页面
function fPopRef(SheetID,RefSheetID,btnCtrl)
{
var strRefText,BasicLimit;
var IDAndValues;
var Args=new Array(2);
IDAndValues=SheetID+JoinChar+RefSheetID;
strRefText=document.all(btnCtrl.sourceIndex-1).value;
if(!isEmpty(strRefText))
{
IDAndValues=IDAndValues+JoinChar+JoinChar+strRefText;
}
try //GetBasicLimit是在expandcheck.js中实现的,要防备此函数不存在,该文件可由用户自定义.
{
BasicLimit=GetBasicLimit(SheetID,RefSheetID);
}
catch(e)
{
}
if(!isEmpty(BasicLimit))
{
IDAndValues=IDAndValues+JoinChar+JoinChar+JoinChar+BasicLimit;
}
IDAndValues=escape(IDAndValues);
para="scroll:no;status:no;center:yes;unadorned:no;dialogHeight:265px;dialogWidth:280px;resizable=1;"
Args[0]=btnCtrl.sourceIndex-1;
Args[1]=btnCtrl;
if(window.showModalDialog("viewframe2.asp?Target=refbasic.asp?IDAndValues="+IDAndValues,Args,para)==true)
{
HasChange();
var curLocation,curRefreshPage,RefFieldCount;
curLocation=window.location.pathname;
curRefreshPage="";
if(curLocation.indexOf("new.asp")>0)
curRefreshPage="new.asp?RefreshByBaseSheet="+RefSheetID;
else if(curLocation.indexOf("newsub.asp")>0)
curRefreshPage="newsub.asp?RefreshByBaseSheet="+RefSheetID;
else if(curLocation.indexOf("edit.asp")>0)
curRefreshPage="edit.asp?RefreshByBaseSheet="+RefSheetID;
RefFieldCount=document.frmData.RefFieldCount.value;
if(curRefreshPage!="" && RefFieldCount>0)
{
//刷新编辑页面前,需要做的处理工作
ClearAttachList(); //先清理掉上传的附件。所以,用户需要养成习惯,先选主表记录,再选附件。
GetCheckboxValue(); //获取checkbox值,以便能还原
document.frmData.action =curRefreshPage;
document.frmData.target ="_self";
document.frmData.submit();
}
}
}
//去掉页面上不需打印的内容。
function RemoveNoPrint(PrintBody)
{
var Pos1,Pos2;
for (i = 0; i < 10; i++)
{
Pos1=PrintBody.indexOf(NoPrintStart);
if(Pos1>0)
{
Pos2=PrintBody.indexOf(NoPrintEnd);
if(Pos2>0)
PrintBody=PrintBody.substr(0,Pos1) + PrintBody.substr(Pos2+NoPrintEnd.length);
else
break;
}
else
break;
}
return PrintBody;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -