?? datacheck.js
字號:
//*******************************************************************************************************************************
//以下是對外提供的函數調用
//*******************************************************************************************************************************
//判斷輸入字符串的有效性
function validateStringValue(svalue)
{
var pattern = /\s*\S\s*/;
if (pattern.exec(svalue)==null)
{
return false;
}
else
{
return true;
}
}
//檢查EMail地址是否合法
function Email(name,str)
{
whichE = eval("document.all." + [name]);
if (whichE.value.length > 0)
{
if (!EmailVerify(whichE.value))
{
alert('請輸入標準的'+ str +',如:xxx@xxx.xxx!');
whichE.focus();
return false;
}
}
return true;
}
//檢查是否為空
function Empty(name,str)
{
whichE = eval("document.all." + [name]);
if (!validateStringValue(whichE.value))
{
whichE.value="";
alert('請輸入 '+str+'!');
whichE.focus();
return false;
}
return true;
}
//檢查是否為數字
function Number(name,str)
{
whichE = eval("document.all." + [name]);
if (whichE.value.length > 0)
{
if(!CheckNumber(whichE.value))
{
alert ('請在 '+ str +' 欄中輸入正確的數字!');
whichE.focus();
return false;
}
}
return true;
}
//檢查是否為正數
function PlusNumber(name,str)
{
whichE = eval("document.all." + [name]);
if (whichE.value.length > 0)
{
if(!CheckPlusNumber(whichE.value))
{
alert ('請在 '+ str +' 欄中輸入正確的正數!');
whichE.focus();
return false;
}
}
return true;
}
//判斷是否是整數
function Integer(name,str)
{
whichE = eval("document.all." + [name]);
if(isNaN(whichE.value)== true)
{
alert('請在 ' + str + ' 欄中輸入正確的整數!')
whichE.focus();
return false;
}
if(/^[0-9]+$/.test(whichE.value) == false)
{
alert('請在 ' + str + ' 欄中輸入正確的整數!')
whichE.focus();
return false;
}
return true;
}
//檢查日期是否合法
function Datetime(name,str)
{
whichE = eval("document.all." + [name]);
if (whichE.value.length > 0)
{
if(!CheckDate(whichE.value))
{
alert ('請在 '+ str +' 欄中輸入正確的日期,格式如2002-1-1!');
whichE.focus();
return false;
}
}
return true;
}
//檢查郵編是否合法
function yb(name,str)
{
whichE = eval("document.all." + [name]);
if (whichE.value.length > 0)
{
if(whichE.value.length != 6 )
{
alert ('請在 '+ str +' 欄中輸入正確的郵政編碼!');
whichE.focus();
return false;
}
}
return true;
}
//響應頁面的tab鍵按下事件的方法
function TextEnter(frm)
{
var key = window.event.keyCode
if(key == 0xD)
{
var CurTabIndex = window.event.srcElement.tabIndex + 1;
for(var n=0;n<frm.elements .length;n++)
{
if(frm.elements [n].tabIndex == CurTabIndex)
{
frm.elements [n].focus();
return true;
}
}
}
}
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) { //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;
}
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];}
}
//*******************************************************************************************************************************
// END
//*******************************************************************************************************************************
//*******************************************************************************************************************************
//以下是本頁面函數的內部調用,不在外部調用
//*******************************************************************************************************************************
//檢驗是否數字
function CheckNumber(n)
{
var i=0;
var j=0;
for(j=n.length-1;j>0; j--)
{
if(n.charAt(j) != ' ')
break;
}
for(i=0;i<n.length;i++)
{
if(n.charAt(i)!=' ')
break;
}
n=n.substring(i,j+1);
var checkOK = "0123456789-.";
var allValid = true;
var decPoints = 0;
var allNum = "";
for (i = 0; i < n.length; i++)
{
ch = n.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
if (ch == ".")
{
allNum += ".";
decPoints++;
}
else
allNum += ch;
}
if (!allValid)
return false;
if (decPoints > 1)
return false;
return true;
}
//檢驗是否正數
function CheckPlusNumber(n)
{
if(n.length > 13)
{
return false;
}
var i=0;
var j=0;
var plusvar = n;
for(j=n.length-1;j>0; j--)
{
if(n.charAt(j) != ' ')
break;
}
for(i=0;i<n.length;i++)
{
if(n.charAt(i)!=' ')
break;
}
n=n.substring(i,j+1);
var checkOK = "0123456789.";
var allValid = true;
var decPoints = 0;
var allNum = "";
for (i = 0; i < n.length; i++)
{
ch = n.charAt(i);
for (j = 0; j < checkOK.length; j++)
if (ch == checkOK.charAt(j))
break;
if (j == checkOK.length)
{
allValid = false;
break;
}
if (ch == ".")
{
allNum += ".";
decPoints++;
}
else
allNum += ch;
}
if (!allValid)
return false;
if (decPoints > 1)
return false;
if (parseFloat(plusvar) == 0)
return false;
return true;
}
var g_MINY = 1601;
var g_MAXY = 4500;
var rgMC = new Array(12);
rgMC[0] = 31;rgMC[1] = 28;rgMC[2] = 31;rgMC[3] = 30;rgMC[4] = 31;rgMC[5] = 30;rgMC[6] = 31;rgMC[7] =31;rgMC[8] = 30;rgMC[9] = 31;rgMC[10] = 30;rgMC[11] = 31;
function IsLeapYear(year)
{
if ((year % 100) == 0)
return((year % 400) == 0);
return ((year % 4) == 0);
}
function isdigit(c)
{
return(c >= '0' && c <= '9');
}
function GetMonthCount(m,y)
{
var c = rgMC[m-1];
if((2 == m) && IsLeapYear(y)) c++;
return c;
}
function atoi(s)
{
var t = 0;
for(var i = 0; i < s.length; i++)
{
var c = s.charAt(i);
if(!isdigit(c)) return t;
else t = t*10 + (c-'0');
}
return t;
}
function CheckDate(t)
{
var l = t.length;
if(0 == l) return false;
var cSp = '\0';
var sSp1 = '';
var sSp2 = '';
for(var i = 0; i < t.length; i++)
{
var c = t.charAt(i);
if(c == ' ' || isdigit(c)) continue;
else if(cSp == '\0' && (c == '/' || c == '-' || c == '.'))
{
cSp = c;
sSp1 = t.substring(i+1,l);
}
else if(c == cSp) sSp2 = t.substring(i+1,l);
else if(c != cSp) return false;
}
if(0 == sSp1.length) return false;
var m;
var d;
var y;
if(0 == sSp2.length) return false;
m = atoi(sSp1);
d = atoi(sSp2);
y = atoi(t);
if(y < 100)
{
y = 1900+y;
while(y < g_yLow) y = y+100;
}
if(y < g_MINY || y > g_MAXY || m < 1 || m > 12) return false;
if(d < 1 || d > GetMonthCount(m,y)) return false;
g_month = m;
g_day = d;
g_year = y;
return true;
}
function EmailVerify(theemail)
{
if (theemail.lastIndexOf("@") < 1)
return false;
else if(theemail.lastIndexOf("@") == theemail.length - 1)
{
return false;
}
else
{
var submail = theemail.substring(theemail.lastIndexOf("@")+1,theemail.length);
if (submail.lastIndexOf(".") < 1)
return false;
}
return true;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -